按建议,继续完成后续工作

结论:已将 session snapshot store 纳入 Chromium 浏览器 smoke,验证真实浏览器 OPFS 中的 INI 文本和通用 session snapshot 均可往返保存读取。
This commit is contained in:
2026-06-08 03:31:28 +08:00
parent 63a697a503
commit 72215f8400
3 changed files with 24 additions and 3 deletions

View File

@@ -10,6 +10,10 @@
import { createLinuxCncIniSdk } from "../../runtime/sdk/src/linuxcnc-ini.js";
import { loadTextFile, saveTextFile } from "../../runtime/opfs/file-service.js";
import { machineIniPath } from "../../runtime/opfs/path-model.js";
import {
loadSessionSnapshot,
saveSessionSnapshot,
} from "../../runtime/opfs/snapshot-store.js";
const status = document.getElementById("status");
@@ -51,6 +55,23 @@ JOINTS = 3
await saveTextFile(opfsPath, iniText);
assertEqual(await loadTextFile(opfsPath), iniText, "opfs roundtrip");
const snapshotPayload = { files: { ini: opfsPath } };
const savedSnapshot = await saveSessionSnapshot(
"browser-session",
snapshotPayload,
{
createdAt: "2026-06-08T00:00:00.000Z",
metadata: { source: "browser-smoke" },
},
);
const loadedSnapshot = await loadSessionSnapshot("browser-session");
assertEqual(loadedSnapshot.format, "linuxcnc-wasm-session-snapshot", "snapshot format");
assertEqual(loadedSnapshot.version, 1, "snapshot version");
assertEqual(loadedSnapshot.sessionId, "browser-session", "snapshot session");
assertEqual(loadedSnapshot.createdAt, savedSnapshot.createdAt, "snapshot timestamp");
assertEqual(loadedSnapshot.payload.files.ini, opfsPath, "snapshot payload");
assertEqual(loadedSnapshot.metadata.source, "browser-smoke", "snapshot metadata");
status.textContent = "browser_ini_opfs_smoke=ok";
} catch (error) {
status.textContent = `browser_ini_opfs_smoke=fail ${error.stack || error.message}`;