import { describe, expect, it } from "vitest"; import { renderMarkdown } from "./markdown"; /// Der Ausgabestring geht per innerHTML ins Panel, das im selben Webview wie /// das Terminal liegt. Nichts davon darf ausführbar sein. describe("renderMarkdown", () => { it("rendert normales Markdown", () => { const html = renderMarkdown("# Titel\n\nText mit *Betonung*."); expect(html).toContain("Betonung"); }); /// Entscheidend ist nicht, ob die Zeichenkette `onerror` vorkommt — als /// escapter Text ist sie harmlos —, sondern ob beim Einhängen ein echtes /// Element mit Handler entsteht. it("gibt rohes HTML als Text aus statt es zu interpretieren", () => { const el = document.createElement("div"); el.innerHTML = renderMarkdown(''); expect(el.querySelector("img")).toBeNull(); expect(el.textContent).toContain(" { const html = renderMarkdown("Text weiter"); expect(html).not.toContain("