first
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
const { describe, it } = require("node:test");
|
||||
const assert = require("node:assert/strict");
|
||||
const { scanWiki } = require("../../scripts/source-signal-coverage");
|
||||
const path = require("path");
|
||||
|
||||
const FIXTURE_ROOT = path.join(__dirname, "..", "fixtures", "coverage-sample-wiki");
|
||||
|
||||
describe("scanWiki", () => {
|
||||
it("returns correct summary counts", () => {
|
||||
const { summary } = scanWiki(FIXTURE_ROOT);
|
||||
assert.equal(summary.ok, 2);
|
||||
assert.equal(summary.missing_sources, 1);
|
||||
assert.equal(summary.empty_sources, 1);
|
||||
assert.equal(summary.invalid_sources, 1);
|
||||
assert.equal(summary.not_applicable, 2);
|
||||
assert.equal(summary.applicable_total, 5);
|
||||
});
|
||||
|
||||
it("returns pages for all scanned files", () => {
|
||||
const { pages } = scanWiki(FIXTURE_ROOT);
|
||||
assert.equal(pages.length, 7);
|
||||
});
|
||||
|
||||
it("marks synthesis as not_applicable", () => {
|
||||
const { pages } = scanWiki(FIXTURE_ROOT);
|
||||
const crystal = pages.find((p) => p.id === "Crystal");
|
||||
assert.equal(crystal.reason, "not_applicable");
|
||||
});
|
||||
|
||||
it("marks query as not_applicable", () => {
|
||||
const { pages } = scanWiki(FIXTURE_ROOT);
|
||||
const query = pages.find((p) => p.pageType === "query");
|
||||
assert.equal(query.reason, "not_applicable");
|
||||
});
|
||||
|
||||
it("detects ok with correct sourceCount", () => {
|
||||
const { pages } = scanWiki(FIXTURE_ROOT);
|
||||
const alpha = pages.find((p) => p.id === "Alpha");
|
||||
assert.equal(alpha.reason, "ok");
|
||||
assert.equal(alpha.sourceCount, 2);
|
||||
});
|
||||
|
||||
it("detects invalid_sources", () => {
|
||||
const { pages } = scanWiki(FIXTURE_ROOT);
|
||||
const delta = pages.find((p) => p.id === "Delta");
|
||||
assert.equal(delta.reason, "invalid_sources");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user