test.govlab/patterns/core/factories/node.factory.test.ts
test.govlab/patterns/core/factories/node.factory.test.ts is a file in Codebase Testing. 32 lines of code and 0 definitions.
import { analysisNode, findingNode, sourceNode } from "@govlab/patterns/core/factories/node.factory.ts";
import { describe, expect, it } from "vitest";
import { SOURCE_ID } from "@govlab/patterns/configuration/constants/graph.constants.ts";
import { coordinate } from "@govlab/patterns/core/factories/axis.factory.ts";
const COORD = coordinate({
analysis: "frequency",
ontology: "probability",
reasoning: "explanation",
representation: "symbolic",
});
describe("the graph node factories", () => {
it("builds the source node at the observation rung with no inputs", () => {
expect(sourceNode()).toStrictEqual({
id: SOURCE_ID,
inputs: [],
kind: "source",
reasoning: "observation",
tags: [],
});
});
it("builds an analysis node fed by the source and tagged with its matcher", () => {
const node = analysisNode("color", "distribution");
expect(node.id).toBe("color:distribution");
expect(node.inputs).toStrictEqual([SOURCE_ID]);
expect(node.tags).toStrictEqual(["distribution"]);
});
it("builds a finding node at the coordinate's rung, tagged with its three other axes", () => {
const node = findingNode("color:distribution", "frequency", COORD);
expect(node.reasoning).toBe("explanation");
expect(node.tags).toStrictEqual(["probability", "frequency", "symbolic"]);
});
});