Guard initial remap staging paths

This commit is contained in:
2026-06-13 08:11:55 +08:00
parent 0588cec429
commit 3b1e4129c4
3 changed files with 121 additions and 24 deletions

View File

@@ -246,6 +246,22 @@ function writeRemapRegressionFiles(name, files) {
return wasmDir;
}
function assertRemapRegressionStaging(name, files, wasmDir) {
const sourceDir = resolve(rootDir, "vendor/linuxcnc/tests/remap", name);
assert.deepEqual(
readdirSync(sourceDir)
.filter((filename) => filename.endsWith(".ini") || filename.endsWith(".ngc"))
.sort(),
[...files].sort(),
`remap ${name} fixture coverage drift`,
);
assert.deepEqual(
files.map((file) => `${wasmDir}/${file}`),
files.map((file) => `/work/remap/${name}/${file}`),
`remap ${name} staging manifest drift`,
);
}
function writeInterpRegressionFile(name, filename) {
const sourceDir = resolve(rootDir, "vendor/linuxcnc/tests/interp", name);
const wasmDir = `/work/interp/${name}`;
@@ -921,12 +937,14 @@ verifyExpectedOutput(
].join("\n"),
);
const duplicateOwordDir = writeRemapRegressionFiles("duplicate-o-word", [
const duplicateOwordFiles = [
"test.ini",
"test.ngc",
"rm207.ngc",
"rm208.ngc",
]);
];
const duplicateOwordDir = writeRemapRegressionFiles("duplicate-o-word", duplicateOwordFiles);
assertRemapRegressionStaging("duplicate-o-word", duplicateOwordFiles, duplicateOwordDir);
verifyExpectedOutput(
"duplicate_oword_remap_wasm",
interp.runRemapFile(
@@ -954,11 +972,13 @@ verifyExpectedOutput(
].join("\n"),
);
const failArgs0Dir = writeRemapRegressionFiles("fail/args.0", [
const failArgs0Files = [
"test.ini",
"test.ngc",
"rm400.ngc",
]);
];
const failArgs0Dir = writeRemapRegressionFiles("fail/args.0", failArgs0Files);
assertRemapRegressionStaging("fail/args.0", failArgs0Files, failArgs0Dir);
verifyExpectedOutput(
"fail_args_0_remap_wasm",
interp.runRemapFile(
@@ -981,11 +1001,13 @@ verifyExpectedOutput(
].join("\n"),
);
const failArgs1Dir = writeRemapRegressionFiles("fail/args.1", [
const failArgs1Files = [
"test.ini",
"test.ngc",
"rm400.ngc",
]);
];
const failArgs1Dir = writeRemapRegressionFiles("fail/args.1", failArgs1Files);
assertRemapRegressionStaging("fail/args.1", failArgs1Files, failArgs1Dir);
verifyExpectedOutput(
"fail_args_1_remap_wasm",
interp.runRemapFileContinueOnError(
@@ -1004,11 +1026,13 @@ verifyExpectedOutput(
].join("\n"),
);
const failArgs2Dir = writeRemapRegressionFiles("fail/args.2", [
const failArgs2Files = [
"test.ini",
"test.ngc",
"rm400.ngc",
]);
];
const failArgs2Dir = writeRemapRegressionFiles("fail/args.2", failArgs2Files);
assertRemapRegressionStaging("fail/args.2", failArgs2Files, failArgs2Dir);
verifyExpectedOutput(
"fail_args_2_remap_wasm",
interp.runRemapFileContinueOnError(
@@ -1027,11 +1051,13 @@ verifyExpectedOutput(
].join("\n"),
);
const failBodyNgcDir = writeRemapRegressionFiles("fail/body-ngc", [
const failBodyNgcFiles = [
"test.ini",
"test.ngc",
"rm400.ngc",
]);
];
const failBodyNgcDir = writeRemapRegressionFiles("fail/body-ngc", failBodyNgcFiles);
assertRemapRegressionStaging("fail/body-ngc", failBodyNgcFiles, failBodyNgcDir);
verifyExpectedOutput(
"fail_body_ngc_remap_wasm",
interp.runRemapFileContinueOnError(
@@ -1053,11 +1079,13 @@ verifyExpectedOutput(
].join("\n"),
);
const m30InteractionDir = writeRemapRegressionFiles("m30-interaction", [
const m30InteractionFiles = [
"test.ini",
"test.ngc",
"rm400.ngc",
]);
];
const m30InteractionDir = writeRemapRegressionFiles("m30-interaction", m30InteractionFiles);
assertRemapRegressionStaging("m30-interaction", m30InteractionFiles, m30InteractionDir);
verifyExpectedOutput(
"m30_interaction_remap_wasm",
interp.runRemapFile(