Files

39 lines
1.1 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { evaluateFidelity } from "../src/verification/fidelity";
describe("fidelity release gate", () => {
it("passes a complete clone vector", () => {
expect(
evaluateFidelity({
assets: 1,
responsiveCoverage: 1,
routeCoverage: 1,
interactionCoverage: 1,
workflowCoverage: 1,
networkContractParity: 1,
accessibilityPass: true,
runtimeErrorCount: 0,
productionBuildPass: true,
}),
).toEqual({ passed: true, failures: [] });
});
it("fails rather than averaging away missing behavior", () => {
const result = evaluateFidelity({
geometry: 0.999,
assets: 1,
responsiveCoverage: 1,
routeCoverage: 1,
interactionCoverage: 0.8,
workflowCoverage: 1,
networkContractParity: 1,
accessibilityPass: true,
runtimeErrorCount: 0,
productionBuildPass: true,
});
expect(result.passed).toBe(false);
expect(result.failures.join(" ")).toMatch(/interactionCoverage/);
});
});