Guard browser OPFS session staging
This commit is contained in:
@@ -4511,6 +4511,30 @@
|
||||
generatedToolTablePath(toolTable.wasmPath, expectedWasmPath);
|
||||
}
|
||||
|
||||
function assertOpfsSessionStaging(label, session, machineId, expectedWasmPaths) {
|
||||
if (session.machineId !== machineId) {
|
||||
throw new Error(`${label}: unexpected machine id ${session.machineId}`);
|
||||
}
|
||||
assertOpfsIniStaging(
|
||||
`${label}_ini`,
|
||||
session.ini,
|
||||
`linuxcnc/machines/${machineId}/machine.ini`,
|
||||
expectedWasmPaths.ini,
|
||||
);
|
||||
assertOpfsToolTableStaging(
|
||||
`${label}_tool_table`,
|
||||
session.toolTable,
|
||||
`linuxcnc/machines/${machineId}/tool.tbl`,
|
||||
expectedWasmPaths.toolTable,
|
||||
);
|
||||
assertOpfsParameterStaging(
|
||||
`${label}_parameters`,
|
||||
session.parameters,
|
||||
`linuxcnc/machines/${machineId}/linuxcnc.var`,
|
||||
expectedWasmPaths.parameters,
|
||||
);
|
||||
}
|
||||
|
||||
function assertSimConfigStagingPlan(machineRel, plan, expectedWasmDir) {
|
||||
if (plan.wasmDir !== expectedWasmDir) {
|
||||
throw new Error(`${machineRel}: browser sim staging root drift`);
|
||||
@@ -9052,23 +9076,15 @@
|
||||
toolTableWasmPath: "/work/browser-tool.tbl",
|
||||
},
|
||||
);
|
||||
assertOpfsIniStaging(
|
||||
"opfs_load_ini_staging",
|
||||
loadedSession.ini,
|
||||
"linuxcnc/machines/browser-interp/machine.ini",
|
||||
"/work/browser-machine.ini",
|
||||
);
|
||||
assertOpfsToolTableStaging(
|
||||
"opfs_load_tool_table_staging",
|
||||
loadedSession.toolTable,
|
||||
"linuxcnc/machines/browser-interp/tool.tbl",
|
||||
"/work/browser-tool.tbl",
|
||||
);
|
||||
assertOpfsParameterStaging(
|
||||
"opfs_restore_parameters_staging",
|
||||
loadedSession.parameters,
|
||||
"linuxcnc/machines/browser-interp/linuxcnc.var",
|
||||
"/work/browser-linuxcnc.var",
|
||||
assertOpfsSessionStaging(
|
||||
"opfs_load_session_staging",
|
||||
loadedSession,
|
||||
"browser-interp",
|
||||
{
|
||||
ini: "/work/browser-machine.ini",
|
||||
parameters: "/work/browser-linuxcnc.var",
|
||||
toolTable: "/work/browser-tool.tbl",
|
||||
},
|
||||
);
|
||||
verifyExpectedOutput(
|
||||
"opfs_restore_parameters",
|
||||
@@ -9224,23 +9240,15 @@
|
||||
toolTableWasmPath: "/work/browser-random-tool.tbl",
|
||||
},
|
||||
);
|
||||
assertOpfsIniStaging(
|
||||
"opfs_load_random_ini_staging",
|
||||
loadedRandomSession.ini,
|
||||
"linuxcnc/machines/browser-random-toolchanger/machine.ini",
|
||||
"/work/browser-random-machine.ini",
|
||||
);
|
||||
assertOpfsToolTableStaging(
|
||||
"opfs_load_random_tool_table_staging",
|
||||
loadedRandomSession.toolTable,
|
||||
"linuxcnc/machines/browser-random-toolchanger/tool.tbl",
|
||||
"/work/browser-random-tool.tbl",
|
||||
);
|
||||
assertOpfsParameterStaging(
|
||||
"opfs_load_random_parameters_staging",
|
||||
loadedRandomSession.parameters,
|
||||
"linuxcnc/machines/browser-random-toolchanger/linuxcnc.var",
|
||||
"/work/browser-random-linuxcnc.var",
|
||||
assertOpfsSessionStaging(
|
||||
"opfs_load_random_session_staging",
|
||||
loadedRandomSession,
|
||||
"browser-random-toolchanger",
|
||||
{
|
||||
ini: "/work/browser-random-machine.ini",
|
||||
parameters: "/work/browser-random-linuxcnc.var",
|
||||
toolTable: "/work/browser-random-tool.tbl",
|
||||
},
|
||||
);
|
||||
verifyExpectedOutput(
|
||||
"opfs_load_random_tool_table",
|
||||
|
||||
Reference in New Issue
Block a user