import { describe, it, expect } from "vitest" import { sanitizeEntryContent } from "./sanitize" describe("sanitizeEntryContent", () => { it("allows safe html tags", () => { const input = "

hello world

" expect(sanitizeEntryContent(input)).toBe(input) }) it("strips script tags", () => { const input = '

safe

' expect(sanitizeEntryContent(input)).toBe("

safe

") }) it("strips event handlers", () => { const input = '

click me

' expect(sanitizeEntryContent(input)).toBe("

click me

") }) it("allows img tags with safe attributes", () => { const input = 'photo' const result = sanitizeEntryContent(input) expect(result).toContain("src=") expect(result).toContain("alt=") }) it("strips iframe tags", () => { const input = '' expect(sanitizeEntryContent(input)).toBe("") }) it("strips javascript: urls from links", () => { const input = 'click' const result = sanitizeEntryContent(input) expect(result).not.toContain("javascript:") }) it("allows https links", () => { const input = 'link' expect(sanitizeEntryContent(input)).toBe(input) }) it("preserves code blocks", () => { const input = "
const x = 1
" expect(sanitizeEntryContent(input)).toBe(input) }) it("strips 1x1 tracking pixel images", () => { const input = '

content

' expect(sanitizeEntryContent(input)).toBe("

content

") }) it("strips images with zero dimensions", () => { const input = '' expect(sanitizeEntryContent(input)).toBe("") }) it("strips images where only width is a tracking dimension", () => { const input = '' expect(sanitizeEntryContent(input)).toBe("") }) it("strips images where only height is a tracking dimension", () => { const input = '' expect(sanitizeEntryContent(input)).toBe("") }) it("preserves normal-sized images", () => { const input = '' const result = sanitizeEntryContent(input) expect(result).toContain("src=") expect(result).toContain("width=") expect(result).toContain("height=") }) it("preserves images without dimension attributes", () => { const input = 'a photo' const result = sanitizeEntryContent(input) expect(result).toContain("src=") expect(result).toContain("alt=") }) it("strips 3x3 tracking pixel at threshold boundary", () => { const input = '' expect(sanitizeEntryContent(input)).toBe("") }) it("preserves images just above tracking pixel threshold", () => { const input = '' const result = sanitizeEntryContent(input) expect(result).toContain("src=") }) })