Guard OPFS gcode program staging
This commit is contained in:
@@ -95,14 +95,25 @@ const storage = {
|
||||
getDirectory: async () => root,
|
||||
};
|
||||
|
||||
function assertGcodeProgramStoragePath(filename, path) {
|
||||
assert.equal(
|
||||
path,
|
||||
`linuxcnc/gcode/${filename}`,
|
||||
`${filename} G-code OPFS path drift`,
|
||||
);
|
||||
}
|
||||
|
||||
assert.equal(await getOpfsRoot(storage), root);
|
||||
|
||||
assert.equal(normalizeOpfsPath("linuxcnc/machines/xyzab.ini"), "linuxcnc/machines/xyzab.ini");
|
||||
assert.equal(machineIniPath("xyzab-tdr"), "linuxcnc/machines/xyzab-tdr/machine.ini");
|
||||
assert.equal(toolTablePath("xyzab-tdr"), "linuxcnc/machines/xyzab-tdr/tool.tbl");
|
||||
assert.equal(parameterFilePath("xyzab-tdr"), "linuxcnc/machines/xyzab-tdr/linuxcnc.var");
|
||||
assert.equal(gcodeProgramPath("fixture.ngc"), "linuxcnc/gcode/fixture.ngc");
|
||||
assert.equal(gcodeProgramPath("custom-fixture.ngc"), "linuxcnc/gcode/custom-fixture.ngc");
|
||||
assertGcodeProgramStoragePath("fixture.ngc", gcodeProgramPath("fixture.ngc"));
|
||||
assertGcodeProgramStoragePath(
|
||||
"custom-fixture.ngc",
|
||||
gcodeProgramPath("custom-fixture.ngc"),
|
||||
);
|
||||
assert.equal(previewCachePath("fixture"), "linuxcnc/preview-cache/fixture/preview.json");
|
||||
assert.equal(sessionSnapshotPath("session-1"), "linuxcnc/sessions/session-1/snapshot.json");
|
||||
assert.equal(
|
||||
@@ -200,14 +211,14 @@ assert.deepEqual(await loadMachineTextFiles("xyzab-tdr", { storage }), {
|
||||
toolTable: "T0 P0 ; no tool\nT2 P2 Z1.25 D0.25\n",
|
||||
parameters: "5161 0.0\n5162 0.0\n",
|
||||
});
|
||||
assert.equal(
|
||||
assertGcodeProgramStoragePath(
|
||||
"fixture.ngc",
|
||||
await saveGcodeProgram("fixture.ngc", "G0 X0 Y0\nM2\n", { storage }),
|
||||
"linuxcnc/gcode/fixture.ngc",
|
||||
);
|
||||
assert.equal(await loadGcodeProgram("fixture.ngc", { storage }), "G0 X0 Y0\nM2\n");
|
||||
assert.equal(
|
||||
assertGcodeProgramStoragePath(
|
||||
"custom-fixture.ngc",
|
||||
await saveGcodeProgram("custom-fixture.ngc", "G1 X1 F10\nM2\n", { storage }),
|
||||
"linuxcnc/gcode/custom-fixture.ngc",
|
||||
);
|
||||
assert.equal(await loadGcodeProgram("custom-fixture.ngc", { storage }), "G1 X1 F10\nM2\n");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user