Guard g10 directory staging

This commit is contained in:
2026-06-13 09:23:36 +08:00
parent a6baa14ddf
commit 8f47c95bca
3 changed files with 83 additions and 36 deletions

View File

@@ -405,6 +405,22 @@ function writeG10RegressionFiles(name, files) {
return wasmDir;
}
function assertG10RegressionStaging(name, files, wasmDir) {
const sourceDir = resolve(rootDir, "vendor/linuxcnc/tests/interp/g10", name);
assert.deepEqual(
readdirSync(sourceDir)
.filter((filename) => filename.endsWith(".ngc") || filename.endsWith(".tbl"))
.sort(),
[...files].sort(),
`interp g10 ${name} fixture coverage drift`,
);
assert.deepEqual(
files.map((file) => `${wasmDir}/${file}`),
files.map((file) => `/work/interp/g10/${name}/${file}`),
`interp g10 ${name} staging manifest drift`,
);
}
function writeUserMCodeFixture(name, code) {
const wasmDir = `/work/user-m/${name}`;
const iniPath = `${wasmDir}/test.ini`;
@@ -3396,6 +3412,7 @@ assert.deepEqual(
);
const g10L1L10Dir = writeG10RegressionFiles("g10-l1-l10", ["test.ngc", "test.tbl"]);
assertG10RegressionStaging("g10-l1-l10", ["test.ngc", "test.tbl"], g10L1L10Dir);
verifyExpectedOutput(
"interp_g10_l1_l10_wasm",
interp.runFileWithIni(`${g10L1L10Dir}/test.ngc`, `${g10L1L10Dir}/test.ini`),
@@ -3415,6 +3432,7 @@ verifyExpectedOutput(
);
const g10L11Dir = writeG10RegressionFiles("g10-l11", ["test.ngc", "test.tbl"]);
assertG10RegressionStaging("g10-l11", ["test.ngc", "test.tbl"], g10L11Dir);
verifyExpectedOutput(
"interp_g10_l11_wasm",
interp.runFileWithIni(`${g10L11Dir}/test.ngc`, `${g10L11Dir}/test.ini`),
@@ -3432,17 +3450,7 @@ verifyExpectedOutput(
);
const g10L2WhileActiveDir = writeG10RegressionFiles("g10-l2-while-active", ["test.ngc"]);
assert.deepEqual(
[
`${g10L1L10Dir}/test.ngc`,
`${g10L11Dir}/test.ngc`,
`${g10L2WhileActiveDir}/test.ngc`,
],
g10RegressionFiles
.slice(0, 3)
.map((file) => `/work/interp/g10/${file}`),
"interp g10 initial staging manifest drift",
);
assertG10RegressionStaging("g10-l2-while-active", ["test.ngc"], g10L2WhileActiveDir);
verifyExpectedOutput(
"interp_g10_l2_while_active_wasm",
interp.runFile(`${g10L2WhileActiveDir}/test.ngc`),
@@ -3461,6 +3469,7 @@ verifyExpectedOutput(
);
const g10L20WhileActiveDir = writeG10RegressionFiles("g10-l20-while-active", ["test.ngc"]);
assertG10RegressionStaging("g10-l20-while-active", ["test.ngc"], g10L20WhileActiveDir);
verifyExpectedOutput(
"interp_g10_l20_while_active_wasm",
interp.runFile(`${g10L20WhileActiveDir}/test.ngc`),
@@ -3478,16 +3487,7 @@ verifyExpectedOutput(
);
const g10WithG92Dir = writeG10RegressionFiles("g10-with-g92", ["test.ngc", "test.tbl"]);
assert.deepEqual(
[
`${g10L20WhileActiveDir}/test.ngc`,
`${g10WithG92Dir}/test.ngc`,
],
g10RegressionFiles
.slice(3, 5)
.map((file) => `/work/interp/g10/${file}`),
"interp g10 final staging manifest drift",
);
assertG10RegressionStaging("g10-with-g92", ["test.ngc", "test.tbl"], g10WithG92Dir);
verifyExpectedOutput(
"interp_g10_with_g92_wasm",
interp.runFileWithIni(`${g10WithG92Dir}/test.ngc`, `${g10WithG92Dir}/test.ini`),