Guard browser invalid INI staging

This commit is contained in:
2026-06-13 17:30:01 +08:00
parent 1f86f72961
commit 0d90a5b513
2 changed files with 94 additions and 8 deletions

View File

@@ -9589,15 +9589,25 @@
"",
].join("\n"),
});
const invalidParamFileSessionOptions = {
iniSdk: ini,
iniWasmPath: "/work/browser-invalid-param-file-session.ini",
};
assertOpfsIniStaging(
"opfs_reject_invalid_ini_parameter_file_staging",
{
opfsPath: "linuxcnc/machines/browser-invalid-param-file-session/machine.ini",
wasmPath: invalidParamFileSessionOptions.iniWasmPath,
},
"linuxcnc/machines/browser-invalid-param-file-session/machine.ini",
"/work/browser-invalid-param-file-session.ini",
);
await verifyRejects(
"opfs_reject_invalid_ini_parameter_file",
() => loadMachineSessionFromOpfs(
interp,
"browser-invalid-param-file-session",
{
iniSdk: ini,
iniWasmPath: "/work/browser-invalid-param-file-session.ini",
},
invalidParamFileSessionOptions,
),
/Invalid parameter filename/,
);
@@ -9612,15 +9622,25 @@
"",
].join("\n"),
});
const invalidToolFileSessionOptions = {
iniSdk: ini,
iniWasmPath: "/work/browser-invalid-tool-file-session.ini",
};
assertOpfsIniStaging(
"opfs_reject_invalid_ini_tool_table_staging",
{
opfsPath: "linuxcnc/machines/browser-invalid-tool-file-session/machine.ini",
wasmPath: invalidToolFileSessionOptions.iniWasmPath,
},
"linuxcnc/machines/browser-invalid-tool-file-session/machine.ini",
"/work/browser-invalid-tool-file-session.ini",
);
await verifyRejects(
"opfs_reject_invalid_ini_tool_table",
() => loadMachineSessionFromOpfs(
interp,
"browser-invalid-tool-file-session",
{
iniSdk: ini,
iniWasmPath: "/work/browser-invalid-tool-file-session.ini",
},
invalidToolFileSessionOptions,
),
/Invalid tool table filename/,
);