import { describe, expect, it } from "vitest";
import { compareBodies } from "../../src/core/compare";
import { diagnoseMessage } from "../../src/core/diagnostics";
import { canonicalMessage, redactMessage } from "../../src/core/export";
import { parseMessage } from "../../src/core/mime";
import { sanitizeMailHtml } from "../../src/core/sanitize";
describe("inert rendering and output", () => {
it("removes active and remote HTML while embedding a deny-all policy", () => {
const output = sanitizeMailHtml(
'link
safe
', ); expect(output).toContain("default-src 'none'"); expect(output).toContain("safe"); expect(output).not.toMatch( /bad\.test|script|href=|src=|style="background/iu, ); }); it("produces a bounded line comparison", () => { expect(compareBodies("a\nb", "a\nc")).toMatchObject({ added: 1, removed: 1, equal: false, }); expect(compareBodies("a\nb", "a\nb")).toMatchObject({ equal: true }); expect(compareBodies("a\nb\nc", "d\ne\nf", 2).truncated).toBe(true); }); it("labels authentication fields as claims", () => { const parsed = parseMessage( "From: Ada