Files
linuxcncWebWASM/web/app/test_display_family_s8_07.mjs

19 lines
1.4 KiB
JavaScript

import assert from "node:assert/strict";
import { SIM_DISPLAY_FAMILY_CATALOG, SIM_DISPLAY_FAMILY_COUNTS } from "./sim-display-families.mjs";
import { displayFamilyForCase, renderDisplayFamily } from "./display-family.mjs";
assert.equal(SIM_DISPLAY_FAMILY_CATALOG.length, 235);
assert.equal(SIM_DISPLAY_FAMILY_COUNTS.axis, 85);
assert.equal(SIM_DISPLAY_FAMILY_COUNTS.qtvcp, 61);
assert.equal(displayFamilyForCase("linuxcnc/configs/sim/axis/corexy/corexy_by_hal.ini").family, "axis");
assert.equal(displayFamilyForCase("linuxcnc/configs/sim/qtvcp_screens/qtdragon/qtdragon.ini").family, "qtvcp");
assert.equal(displayFamilyForCase("linuxcnc/configs/sim/touchy/touchy.ini").family, "touchy");
class Node { constructor(tag) { this.tagName = tag; this.children = []; this.className = ""; this.textContent = ""; } append(...nodes) { this.children.push(...nodes); } }
const document = { createElement: (tag) => new Node(tag) };
const panel = renderDisplayFamily(document, { casePath: "linuxcnc/configs/sim/axis/corexy/corexy_by_hal.ini" });
assert.equal(panel.className, "display-family");
assert.match(panel.children[0].textContent, /AXIS/);
assert.ok(panel.children[2].children.length >= 5);
console.log(JSON.stringify({ schema: "display-family-s8-07-sample.v1", status: "verified", case_count: SIM_DISPLAY_FAMILY_CATALOG.length, counts: SIM_DISPLAY_FAMILY_COUNTS, selected: displayFamilyForCase("linuxcnc/configs/sim/axis/corexy/corexy_by_hal.ini") }));