按建议,继续完成后续工作
结论:已将 session snapshot store 纳入 Chromium 浏览器 smoke,验证真实浏览器 OPFS 中的 INI 文本和通用 session snapshot 均可往返保存读取。
This commit is contained in:
@@ -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}`;
|
||||
|
||||
Reference in New Issue
Block a user