import assert from "node:assert/strict";
import test from "node:test";
import { highlightFenced, highlightLines } from "../src/features/agent/highlight-cache";
test("highlights code languages used by the filesystem and tool previews", () => {
assert.match(highlightFenced("css", ".card { color: red; }"), /hljs-selector-class/);
assert.match(highlightFenced("java", "class Studio {}"), /hljs-keyword/);
assert.match(highlightFenced("toml", "port = 8080"), /hljs-attr/);
});
test("preserves embedded language context across filesystem lines", () => {
const rendered = highlightLines("html", [""]);
assert.equal(rendered.length, 3);
assert.match(rendered[1] ?? "", /language-css/);
assert.match(rendered[1] ?? "", /hljs-selector-class/);
for (const line of rendered) {
assert.equal(line.match(//g)?.length ?? 0);
}
});