test.govlab/quality/configuration/strings/validation.strings.test.ts
test.govlab/quality/configuration/strings/validation.strings.test.ts is a file in Codebase Testing. 67 lines of code and 0 definitions.
import {
blockedPanel,
constantAlias,
constantAliasFix,
constantDuplicate,
constantDuplicateFix,
danglingVar,
danglingVarFix,
deadVar,
deadVarFix,
duplicateComponent,
duplicateComponentFix,
duplicateValidator,
fileNameSpace,
findingAction,
findingHead,
findingMessage,
folderNotKebab,
manifestsFailed,
mobileNotImported,
mobileNotImportedFix,
mobileWithoutBase,
mobileWithoutBaseFix,
ruleDerivationFailed,
strayVar,
strayVarFix,
validationFailed,
} from "@govlab/quality/configuration/strings/validation.strings.ts";
import { describe, expect, it } from "vitest";
const COUNT = 3;
describe("validation strings", () => {
it("name the constant, component and custom property each finding reports", () => {
const lines: [string, string][] = [
[constantAlias("A", "B"), "'B'"],
[constantAliasFix("A", "B"), "'A'"],
[constantDuplicate("MAX", COUNT), "3 files"],
[constantDuplicateFix("MAX", COUNT), "3 consumers"],
[duplicateComponent("card", COUNT), "'.card'"],
[duplicateComponentFix("card"), "'.card'"],
[deadVar("--gap"), "'--gap'"],
[deadVarFix("--gap"), "var(--gap)"],
[danglingVar("--gap"), "var(--gap)"],
[danglingVarFix("--gap"), "'--gap'"],
[strayVar("--gap"), "'--gap'"],
[strayVarFix("--gap"), "'--gap'"],
[mobileWithoutBase("a-mobile.css", "a.css"), "'a.css'"],
[mobileWithoutBaseFix("a.css"), "'a.css'"],
[mobileNotImported("a-mobile.css"), "'a-mobile.css'"],
[mobileNotImportedFix("a-mobile.css", "a.css"), "'a.css'"],
[fileNameSpace("a b.ts"), "'a b.ts'"],
[folderNotKebab("Src"), "'Src'"],
[duplicateValidator("naming"), '"naming"'],
];
for (const [line, part] of lines) {
expect(line).toContain(part);
}
});
it("lay out the quality-gate panel and the validator failure headers", () => {
expect(blockedPanel(COUNT)).toContain("3 finding(s)");
expect(findingHead("a.ts:1", "naming")).toContain("naming");
expect(findingMessage("m")).toBe(" m");
expect(findingAction("split it")).toContain("split it");
expect(validationFailed("install-registry")).toContain("install-registry");
expect(manifestsFailed(COUNT)).toContain("3 stale declarations");
expect(ruleDerivationFailed(COUNT)).toContain("3 hardcoded structural facts");
});
});