test.govlab/quality/core/formatters/report.formatter.test.ts
test.govlab/quality/core/formatters/report.formatter.test.ts is a file in Codebase Testing. 23 lines of code and 0 definitions.
import { expect, test } from "vitest";
import { formatFindings, renderHuman, renderJson } from "@govlab/quality/core/formatters/report.formatter.ts";
import type { Finding } from "@govlab/quality/types/finding.types.ts";
const finding: Finding = {
advisory: false,
column: 2,
ecosystem: "go",
file: "a.go",
fixable: false,
line: 1,
message: "A rule reported a defect.",
ruleId: "tool/rule",
severity: "error",
tool: "tool",
};
test("formatFindings groups findings under their file", () => {
expect(formatFindings([finding])).toBe("a.go\n 1:2 error A rule reported a defect. tool/rule (tool)");
});
test("renderHuman appends the counted summary and renderJson carries the same counts", () => {
expect(renderHuman(["out"], [finding], 0)).toBe("out\n\n1 error(s), 0 advisory, 0 notice(s), 0 fixed\n");
const rendered: unknown = JSON.parse(renderJson([finding], 1));
expect(rendered).toHaveProperty("summary", { advisory: 0, errors: 1, fixed: 1, notices: 0, total: 1 });
});