import { generateBookmarklet, encodeCapturePayload, CapturePayload } from '@/lib/external-capture' describe('external-capture', () => { describe('generateBookmarklet', () => { it('generates a valid javascript bookmarklet string', () => { const bookmarklet = generateBookmarklet() expect(bookmarklet).toContain('javascript:') expect(bookmarklet.length).toBeGreaterThan(0) }) it('contains the capture URL', () => { const bookmarklet = generateBookmarklet() expect(bookmarklet).toContain('capture') }) }) describe('encodeCapturePayload', () => { it('encodes title in params', () => { const payload: CapturePayload = { title: 'Test Note', url: '', selection: '' } const encoded = encodeCapturePayload(payload) expect(encoded).toContain('title=Test') }) it('encodes url in params', () => { const payload: CapturePayload = { title: '', url: 'https://example.com', selection: '' } const encoded = encodeCapturePayload(payload) expect(encoded).toContain('url=https%3A%2F%2Fexample.com') }) it('encodes selection in params', () => { const payload: CapturePayload = { title: '', url: '', selection: 'Selected text' } const encoded = encodeCapturePayload(payload) expect(encoded).toContain('selection=Selected') }) }) })