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("