test.coordination/core/normalizers/document.normalizer.test.ts
test.coordination/core/normalizers/document.normalizer.test.ts is a file in Codebase Testing. 30 lines of code and 0 definitions.
import { describe, it } from "vitest";
import { sameDocument, sameRow } from "coordination-surface/tools/core/normalizers/document.normalizer.ts";
import assert from "node:assert/strict";
const RENDERED = ["# Binding", "Prose line.", "| slot | state |", "|---|---|", "| `{a}` | ABSENT |", ""].join("\n");
const FORMATTED = [
"# Binding",
"",
"Prose line.",
"",
"| slot | state |",
"| ----- | ------ |",
"| `{a}` | ABSENT |",
].join("\n");
describe("sameRow", () => {
it("compares rows by their cells and reads any divider run as one divider", () => {
assert.equal(sameRow("| a | b |", "|a|b|"), true);
assert.equal(sameRow("| --- | :-: |", "|---|---|"), false);
assert.equal(sameRow("| ----- | - |", "|---|---|"), true);
assert.equal(sameRow("| a | b |", "| a | c |"), false);
});
});
describe("sameDocument", () => {
it("reads a formatter's padding and blank lines as no change", () => {
assert.equal(sameDocument(FORMATTED, RENDERED), true);
});
it("reads a changed cell or a changed line as a change", () => {
assert.equal(sameDocument(FORMATTED.replace("ABSENT", "RESOLVED"), RENDERED), false);
assert.equal(sameDocument(FORMATTED.replace("Prose line.", "Prose line"), RENDERED), false);
});
});