Guard mixed m98m99 staging paths

This commit is contained in:
2026-06-13 06:30:55 +08:00
parent 7cc47f020d
commit c3fadfec65
3 changed files with 128 additions and 0 deletions

View File

@@ -7697,6 +7697,7 @@
].join("\n"),
);
const m98m99MixedSubStylePaths = [];
for (const mixedSubStyleFixture of [
{
name: "called_with_o_call",
@@ -7746,6 +7747,7 @@
"m98m99/06-error-mixed-sub-styles",
mixedSubStyleFixture.file,
);
m98m99MixedSubStylePaths.push(mixedSubStylePath);
const mixedSubStyleRun = runWithCapturedPrints(() =>
interp.runFile(mixedSubStylePath),
);
@@ -7772,6 +7774,14 @@
);
}
}
const m98m99MixedStagedNgcFiles = [
m98m99M98ButNoSubPath,
m98m99M98LoopsPath,
...m98m99MixedSubStylePaths,
].map((path) => path.replace("/work/browser-interp/m98m99/", ""));
if (m98m99MixedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(3, 9).join(",")) {
throw new Error("browser_interp_m98m99_mixed_staging_manifest: list drift");
}
const m98m99NestedSubsPath = await writeInterpRegressionFile(
interp,

View File

@@ -2605,6 +2605,7 @@ verifyExpectedOutput(
].join("\n"),
);
const m98m99MixedSubStylePaths = [];
for (const mixedSubStyleFixture of [
{
name: "called_with_o_call",
@@ -2653,6 +2654,7 @@ for (const mixedSubStyleFixture of [
"m98m99/06-error-mixed-sub-styles",
mixedSubStyleFixture.file,
);
m98m99MixedSubStylePaths.push(mixedSubStylePath);
const mixedSubStyleRun = runWithCapturedPrints(() => interp.runFile(mixedSubStylePath));
verifyExpectedOutput(
`interp_m98m99_06_${mixedSubStyleFixture.name}_wasm`,
@@ -2677,6 +2679,17 @@ for (const mixedSubStyleFixture of [
);
}
}
assert.deepEqual(
[
m98m99M98ButNoSubPath,
m98m99M98LoopsPath,
...m98m99MixedSubStylePaths,
],
m98m99RegressionFiles
.slice(3, 9)
.map((file) => `/work/interp/m98m99/${file}`),
"interp m98m99 mixed direct-file staging manifest drift",
);
const m98m99NestedSubsPath = writeInterpRegressionFile("m98m99/07-nested-subs", "test.ngc");
const m98m99NestedSubsRun = runWithCapturedPrints(() => interp.runFile(m98m99NestedSubsPath));