import { describe, expect, it } from "vitest"; import { renderMarkdown } from "@/lib/markdown"; describe("renderMarkdown", () => { it("renders basic markdown", () => { const html = renderMarkdown("Some **bold** and *italic* text."); expect(html).toContain("bold"); expect(html).toContain("italic"); }); it("renders GFM tables and fenced code", () => { const html = renderMarkdown("| a | b |\n| - | - |\n| 1 | 2 |\n\n```\ncode\n```"); expect(html).toContain(""); expect(html).toContain("
");
  });

  it("strips \n\nAfter');
    expect(html).not.toContain(" {
    const html = renderMarkdown('');
    expect(html).not.toContain("onerror");
    expect(html).not.toContain("alert(1)");
  });

  it("removes javascript: URLs from links", () => {
    const html = renderMarkdown("[click me](javascript:alert(1))");
    expect(html).not.toContain("javascript:");
    expect(html).toContain("click me");
  });

  it("keeps safe inline HTML like ", () => {
    const html = renderMarkdown("Press Tab to move.");
    expect(html).toContain("Tab");
  });
});