Guard initial remap per-file staging paths

This commit is contained in:
2026-06-13 13:02:44 +08:00
parent af5fc84519
commit d7cd11627f
3 changed files with 87 additions and 7 deletions

View File

@@ -4660,6 +4660,17 @@
}
}
function assertRemapRegressionFilesStaging(name, files, wasmDir) {
if (files.length === 0 || new Set(files).size !== files.length) {
throw new Error(`browser_remap_${name}_fixture_coverage: list drift`);
}
for (const file of files) {
if (`${wasmDir}/${file}` !== `/work/browser-remap/${name}/${file}`) {
throw new Error(`browser_remap_${name}_${file}_staging_manifest: list drift`);
}
}
}
async function writeInterpRegressionFile(interp, name, filename) {
const sourceDir = `../../vendor/linuxcnc/tests/interp/${name}`;
const wasmDir = `/work/browser-interp/${name}`;
@@ -6008,7 +6019,7 @@
"rm208.ngc",
];
const duplicateOwordDir = await writeRemapRegressionFiles(interp, "duplicate-o-word", duplicateOwordFiles);
assertRemapRegressionStaging("duplicate-o-word", duplicateOwordFiles, duplicateOwordDir);
assertRemapRegressionFilesStaging("duplicate-o-word", duplicateOwordFiles, duplicateOwordDir);
verifyExpectedOutput(
"browser_duplicate_oword_remap",
interp.runRemapFile(
@@ -6042,7 +6053,7 @@
"rm400.ngc",
];
const failArgs0Dir = await writeRemapRegressionFiles(interp, "fail/args.0", failArgs0Files);
assertRemapRegressionStaging("fail/args.0", failArgs0Files, failArgs0Dir);
assertRemapRegressionFilesStaging("fail/args.0", failArgs0Files, failArgs0Dir);
verifyExpectedOutput(
"browser_fail_args_0_remap",
interp.runRemapFile(
@@ -6071,7 +6082,7 @@
"rm400.ngc",
];
const failArgs1Dir = await writeRemapRegressionFiles(interp, "fail/args.1", failArgs1Files);
assertRemapRegressionStaging("fail/args.1", failArgs1Files, failArgs1Dir);
assertRemapRegressionFilesStaging("fail/args.1", failArgs1Files, failArgs1Dir);
verifyExpectedOutput(
"browser_fail_args_1_remap",
interp.runRemapFileContinueOnError(