test.govlab/quality/core/validators/binding.validator.test.ts
test.govlab/quality/core/validators/binding.validator.test.ts is a file in Codebase Testing. 10 lines of code and 0 definitions.
import { expect, test } from "vitest";
import { bindingFindings } from "@govlab/quality/core/validators/binding.validator.ts";
const rule = (id: string, text: string): { file: string; id: string; text: string } => ({ file: `${id}.ts`, id, text });
const isConcept = (concept: string): boolean => concept === "magic-number";
test("bindingFindings reports a rule with no contract, no canonical list, or an unknown concept", () => {
const contracts = new Set(["no-x"]);
expect(bindingFindings([rule("no-x", 'canonical: ["magic-number"]')], contracts, isConcept)).toStrictEqual([]);
const findings = bindingFindings([rule("no-y", 'canonical: ["ghost"]'), rule("no-x", "")], contracts, isConcept);
expect(findings.map((finding) => finding.reason)).toStrictEqual(["no-contract", "unknown-concept", "no-canonical"]);
});