推进 INI 面板会话快照工作流

This commit is contained in:
2026-06-14 15:17:06 +08:00
parent 37daf58796
commit 558960b2f2
4 changed files with 179 additions and 0 deletions

View File

@@ -379,6 +379,40 @@ TOOL_TABLE = browser-tool.tbl
() => uiDocument.getElementById("log")?.textContent.includes("Saved machine text files"),
"machine file save",
);
uiDocument.getElementById("save-session-snapshot").click();
await waitFor(
() => uiDocument.getElementById("log")?.textContent.includes("Saved machine session snapshot"),
"machine session snapshot save",
);
assertEqual(
uiDocument.getElementById("field-session-snapshot").textContent,
"ui-machine-session/ui-machine-session.json",
"UI session snapshot path",
);
assertEqual(
uiDocument.getElementById("field-session-ini").textContent,
"linuxcnc/machines/xyzab-tdr/machine.ini",
"UI snapshot INI OPFS path",
);
assertEqual(
uiDocument.getElementById("field-session-gcode").textContent,
"linuxcnc/gcode/ui-session.ngc",
"UI snapshot G-code OPFS path",
);
uiDocument.getElementById("ini-editor").value = "";
uiDocument.getElementById("restore-session-snapshot").click();
await waitFor(
() => uiDocument.getElementById("log")?.textContent.includes("Restored machine session snapshot"),
"machine session snapshot restore",
);
assertEqual(
uiDocument.getElementById("field-session-snapshot").textContent,
"ui-machine-session/ui-machine-session.json",
"UI restored session snapshot path",
);
if (!uiDocument.getElementById("ini-editor").value.includes("MACHINE = browser-smoke")) {
throw new Error("UI restored session snapshot did not reload INI text");
}
uiDocument.getElementById("load-session").click();
await waitFor(
() => uiDocument.getElementById("log")?.textContent.includes("Loaded machine session"),