import assert from "node:assert/strict"; import { buildFindings, createFileRecord } from "../scripts/core/finding-engine.js"; import { createFileLocator } from "../scripts/core/path-utils.js"; const files = [ createFileRecord(createFileLocator("data", "modules/example/icons/token/Ork1_Token.webp"), 1234), createFileRecord(createFileLocator("data", "modules/example/storage/unused.webp"), 3456) ]; const references = [ { sourceType: "world-document", sourceScope: { ownerType: "world", ownerId: "demo-world", systemId: "demo-system", subtype: "actors" }, sourceLabel: "Actor demo", rawValue: "modules/example/icons/token/Ork*_Token.webp", normalized: { ...createFileLocator("data", "modules/example/icons/token/Ork*_Token.webp"), targetKind: "wildcard" } } ]; const { findings } = buildFindings({ files, references }); assert.equal( findings.some(finding => finding.kind === "broken-reference" && finding.target.locator === "data:modules/example/icons/token/Ork*_Token.webp"), false, "matching wildcard references must not be reported as broken" ); assert.equal( findings.some(finding => finding.kind === "orphan-file" && finding.target.locator === "data:modules/example/icons/token/Ork1_Token.webp"), false, "files matched by a wildcard reference must not be reported as orphaned" ); assert.equal( findings.some(finding => finding.kind === "orphan-file" && finding.target.locator === "data:modules/example/storage/unused.webp"), true, "unmatched package storage files should still be reported as orphaned" ); console.log("wildcard-reference-test: ok");