Guard remaining m98m99 direct-file staging

This commit is contained in:
2026-06-13 08:49:38 +08:00
parent fba2946a67
commit 410e109e61
3 changed files with 71 additions and 39 deletions

View File

@@ -7939,6 +7939,11 @@
"m98m99/04-M98-but-no-sub",
"test.ngc",
);
assertInterpRegressionFileStaging(
"m98m99/04-M98-but-no-sub",
"test.ngc",
m98m99M98ButNoSubPath,
);
verifyExpectedOutput(
"browser_interp_m98m99_04_m98_but_no_sub",
interp.runFile(m98m99M98ButNoSubPath),
@@ -7960,6 +7965,7 @@
"m98m99/05-M98-loops",
"test.ngc",
);
assertInterpRegressionFileStaging("m98m99/05-M98-loops", "test.ngc", m98m99M98LoopsPath);
const m98m99M98LoopsRun = runWithCapturedPrints(() =>
interp.runFile(m98m99M98LoopsPath),
);
@@ -8064,11 +8070,9 @@
}
}
const m98m99MixedStagedNgcFiles = [
m98m99M98ButNoSubPath,
m98m99M98LoopsPath,
...m98m99MixedSubStylePaths,
].map((path) => path.replace("/work/browser-interp/m98m99/", ""));
if (m98m99MixedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(3, 9).join(",")) {
if (m98m99MixedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(5, 9).join(",")) {
throw new Error("browser_interp_m98m99_mixed_staging_manifest: list drift");
}
@@ -8077,6 +8081,7 @@
"m98m99/07-nested-subs",
"test.ngc",
);
assertInterpRegressionFileStaging("m98m99/07-nested-subs", "test.ngc", m98m99NestedSubsPath);
const m98m99NestedSubsRun = runWithCapturedPrints(() =>
interp.runFile(m98m99NestedSubsPath),
);
@@ -8106,6 +8111,11 @@
"m98m99/08-sub-follows-main",
"test.ngc",
);
assertInterpRegressionFileStaging(
"m98m99/08-sub-follows-main",
"test.ngc",
m98m99SubFollowsMainPath,
);
const m98m99SubFollowsMainRun = runWithCapturedPrints(() =>
interp.runFile(m98m99SubFollowsMainPath),
);
@@ -8143,13 +8153,6 @@
m98m99DisableFanucSubsFiles,
m98m99DisableFanucSubsDir,
);
const m98m99NestedStagedNgcFiles = [
m98m99NestedSubsPath,
m98m99SubFollowsMainPath,
].map((path) => path.replace("/work/browser-interp/m98m99/", ""));
if (m98m99NestedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(9, 11).join(",")) {
throw new Error("browser_interp_m98m99_nested_staging_manifest: list drift");
}
for (const disableFanucCase of [
{
name: "fanuc_ini",
@@ -8236,6 +8239,7 @@
"m98m99/10-M98-P001",
"test.ngc",
);
assertInterpRegressionFileStaging("m98m99/10-M98-P001", "test.ngc", m98m99M98P001Path);
const m98m99M98P001Run = runWithCapturedPrints(() =>
interp.runFile(m98m99M98P001Path),
);
@@ -8279,12 +8283,6 @@
m98m99MainProgramOwordFiles,
m98m99MainProgramOwordDir,
);
const m98m99M98P001StagedNgcFiles = [m98m99M98P001Path].map((path) =>
path.replace("/work/browser-interp/m98m99/", ""),
);
if (m98m99M98P001StagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(13, 14).join(",")) {
throw new Error("browser_interp_m98m99_main_program_staging_manifest: list drift");
}
for (const mainProgramFixture of [
{
name: "legal_m2",

View File

@@ -2934,6 +2934,7 @@ const m98m99M98ButNoSubPath = writeInterpRegressionFile(
"m98m99/04-M98-but-no-sub",
"test.ngc",
);
assertInterpRegressionFileStaging("m98m99/04-M98-but-no-sub", "test.ngc", m98m99M98ButNoSubPath);
verifyExpectedOutput(
"interp_m98m99_04_m98_but_no_sub_wasm",
interp.runFile(m98m99M98ButNoSubPath),
@@ -2951,6 +2952,7 @@ verifyExpectedOutput(
);
const m98m99M98LoopsPath = writeInterpRegressionFile("m98m99/05-M98-loops", "test.ngc");
assertInterpRegressionFileStaging("m98m99/05-M98-loops", "test.ngc", m98m99M98LoopsPath);
const m98m99M98LoopsRun = runWithCapturedPrints(() => interp.runFile(m98m99M98LoopsPath));
verifyExpectedOutput(
"interp_m98m99_05_m98_loops_wasm",
@@ -3050,18 +3052,15 @@ for (const mixedSubStyleFixture of [
}
}
assert.deepEqual(
[
m98m99M98ButNoSubPath,
m98m99M98LoopsPath,
...m98m99MixedSubStylePaths,
],
m98m99MixedSubStylePaths,
m98m99RegressionFiles
.slice(3, 9)
.slice(5, 9)
.map((file) => `/work/interp/m98m99/${file}`),
"interp m98m99 mixed direct-file staging manifest drift",
);
const m98m99NestedSubsPath = writeInterpRegressionFile("m98m99/07-nested-subs", "test.ngc");
assertInterpRegressionFileStaging("m98m99/07-nested-subs", "test.ngc", m98m99NestedSubsPath);
const m98m99NestedSubsRun = runWithCapturedPrints(() => interp.runFile(m98m99NestedSubsPath));
verifyExpectedOutput(
"interp_m98m99_07_nested_subs_wasm",
@@ -3088,6 +3087,11 @@ const m98m99SubFollowsMainPath = writeInterpRegressionFile(
"m98m99/08-sub-follows-main",
"test.ngc",
);
assertInterpRegressionFileStaging(
"m98m99/08-sub-follows-main",
"test.ngc",
m98m99SubFollowsMainPath,
);
const m98m99SubFollowsMainRun = runWithCapturedPrints(() =>
interp.runFile(m98m99SubFollowsMainPath),
);
@@ -3124,16 +3128,6 @@ assertInterpRegressionStaging(
m98m99DisableFanucSubsFiles,
m98m99DisableFanucSubsDir,
);
assert.deepEqual(
[
m98m99NestedSubsPath,
m98m99SubFollowsMainPath,
],
m98m99RegressionFiles
.slice(9, 11)
.map((file) => `/work/interp/m98m99/${file}`),
"interp m98m99 nested direct-file staging manifest drift",
);
for (const disableFanucCase of [
{
name: "fanuc_ini",
@@ -3216,6 +3210,7 @@ verifyExpectedOutput(
);
const m98m99M98P001Path = writeInterpRegressionFile("m98m99/10-M98-P001", "test.ngc");
assertInterpRegressionFileStaging("m98m99/10-M98-P001", "test.ngc", m98m99M98P001Path);
const m98m99M98P001Run = runWithCapturedPrints(() => interp.runFile(m98m99M98P001Path));
verifyExpectedOutput(
"interp_m98m99_10_m98_p001_wasm",
@@ -3256,13 +3251,6 @@ assertInterpRegressionStaging(
m98m99MainProgramOwordFiles,
m98m99MainProgramOwordDir,
);
assert.deepEqual(
[m98m99M98P001Path],
m98m99RegressionFiles
.slice(13, 14)
.map((file) => `/work/interp/m98m99/${file}`),
"interp m98m99 m98-p001 direct-file staging manifest drift",
);
for (const mainProgramFixture of [
{
name: "legal_m2",