Advance AXIS-style Three.js simulation UI
This commit is contained in:
@@ -7,6 +7,8 @@ const root = resolve(dirname(fileURLToPath(import.meta.url)), "../../..");
|
||||
const doc = readFileSync(resolve(root, "docs/axis-style-simulation-implementation.md"), "utf8");
|
||||
const readme = readFileSync(resolve(root, "README.md"), "utf8");
|
||||
const priority = readFileSync(resolve(root, "docs/real-browser-simulation-priority.md"), "utf8");
|
||||
const simulationPackage = JSON.parse(readFileSync(resolve(root, "runtime/ui/simulation/package.json"), "utf8"));
|
||||
const threeVendor = readFileSync(resolve(root, "runtime/ui/simulation/vendor/three/three.core.js"), "utf8");
|
||||
|
||||
for (const required of [
|
||||
"AXIS-Style Browser Simulation Implementation Plan",
|
||||
@@ -15,7 +17,18 @@ for (const required of [
|
||||
"Preview and DRO",
|
||||
"G-code source with active execution line",
|
||||
"window.linuxCncRealSimulationApi",
|
||||
"reloadCurrentProgram()",
|
||||
"getMdiHistory()",
|
||||
"getRecentPrograms()",
|
||||
"Three.js `^0.183.2`",
|
||||
"exportDiagnosticsArtifact()",
|
||||
"getLimitsHomeState()",
|
||||
"getAxisStatusbarState()",
|
||||
"applyAxisViewFromUrl(search)",
|
||||
"AXIS_SCREENSHOT_ARTIFACT_DIR",
|
||||
"AXIS_SCREENSHOT_FULL_DIAGNOSTICS=1",
|
||||
"SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh",
|
||||
"SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_axis_screenshot_browser.sh",
|
||||
"Immediate Next Batch",
|
||||
]) {
|
||||
assert.ok(doc.includes(required), `axis-style simulation doc missing ${required}`);
|
||||
@@ -35,5 +48,11 @@ assert.ok(
|
||||
priority.includes("docs/axis-style-simulation-implementation.md"),
|
||||
"priority doc should link AXIS-style implementation plan",
|
||||
);
|
||||
assert.equal(
|
||||
simulationPackage.dependencies?.three,
|
||||
"^0.183.2",
|
||||
"simulation package should pin the requested Three.js dependency range",
|
||||
);
|
||||
assert.match(threeVendor, /REVISION = '183'/, "vendored Three.js build should match the requested 0.183.x runtime");
|
||||
|
||||
console.log("axis_style_simulation_docs_node_smoke=ok");
|
||||
|
||||
@@ -18,6 +18,7 @@ const hostSmokeText = readFileSync(resolve(root, "tests/host/verify_host_smokes.
|
||||
const releaseGateText = readFileSync(resolve(root, "tests/host/verify_project_release_gate.sh"), "utf8");
|
||||
const simulationHtmlText = readFileSync(resolve(root, "runtime/ui/simulation/index.html"), "utf8");
|
||||
const simulationSmokeText = readFileSync(resolve(root, "tests/browser/verify_real_simulation_browser.sh"), "utf8");
|
||||
const simulationScreenshotSmokeText = readFileSync(resolve(root, "tests/browser/verify_real_simulation_axis_screenshot_browser.sh"), "utf8");
|
||||
|
||||
for (const phrase of [
|
||||
"Real Browser Simulation Priority",
|
||||
@@ -44,10 +45,17 @@ for (const text of [handoffText, readmeText, trackerText]) {
|
||||
|
||||
assert.match(hostSmokeText, /verify_real_browser_simulation_priority_docs\.sh/);
|
||||
assert.match(hostSmokeText, /verify_real_simulation_browser\.sh/);
|
||||
assert.match(hostSmokeText, /verify_real_simulation_axis_screenshot_browser\.sh/);
|
||||
assert.match(releaseGateText, /verify_real_simulation_browser\.sh/);
|
||||
assert.match(releaseGateText, /verify_real_simulation_axis_screenshot_browser\.sh/);
|
||||
assert.match(simulationHtmlText, /LinuxCNC Browser Simulation/);
|
||||
assert.match(simulationHtmlText, /data-toolpath-svg/);
|
||||
assert.match(simulationHtmlText, /data-toolpath-three/);
|
||||
assert.match(simulationHtmlText, /data-program-lines/);
|
||||
assert.match(simulationSmokeText, /browser_real_simulation_page_smoke=ok/);
|
||||
assert.match(simulationScreenshotSmokeText, /axis_screenshot_browser_smoke=ok/);
|
||||
assert.match(simulationScreenshotSmokeText, /--screenshot=/);
|
||||
assert.match(simulationScreenshotSmokeText, /AXIS_SCREENSHOT_ARTIFACT_DIR/);
|
||||
assert.match(simulationScreenshotSmokeText, /axis-\$\{name\}-diagnostics\.json/);
|
||||
|
||||
console.log("real_browser_simulation_priority_docs_node_smoke=ok");
|
||||
|
||||
Reference in New Issue
Block a user