feat(ui): separate live data and lab surfaces
This commit is contained in:
@@ -610,6 +610,6 @@ test("LiDAR fetchers use read-only endpoints and workspace is registered", async
|
||||
method: "GET",
|
||||
},
|
||||
]);
|
||||
assert.equal(workspaceById("lidar-quality").root, "fleet");
|
||||
assert.equal(workspaceById("lidar-quality").kind, "lidar-quality");
|
||||
assert.equal(workspaceById("lab-archive").root, "polygon");
|
||||
assert.equal(workspaceById("lab-archive").kind, "lab-archive");
|
||||
});
|
||||
|
||||
@@ -319,17 +319,19 @@ test("Polygon exposes one dataset surface and keeps legacy links compatible", ()
|
||||
workspacesForRoot("polygon").some(({ id }) => id === "polygon-run"),
|
||||
false,
|
||||
);
|
||||
assert.equal(workspaceById("polygon-datasets").root, "polygon");
|
||||
assert.equal(workspaceById("polygon-datasets").kind, "polygon-datasets");
|
||||
assert.equal(workspaceById("polygon-datasets"), null);
|
||||
assert.equal(workspaceById("datasets").root, "data");
|
||||
assert.equal(workspaceById("datasets").kind, "datasets");
|
||||
assert.deepEqual(
|
||||
workspacesForRoot("polygon").map(({ id }) => id),
|
||||
["polygon-datasets"],
|
||||
["lab-archive"],
|
||||
);
|
||||
assert.equal(
|
||||
workspacesForRoot("system").some(({ id }) => id === "polygon-run"),
|
||||
false,
|
||||
);
|
||||
assert.equal(roots.some(({ id }) => id === "polygon"), true);
|
||||
assert.equal(roots.at(-1)?.id, "polygon");
|
||||
});
|
||||
|
||||
test("Polygon contracts decode path-free evidence and preserve the safety boundary", () => {
|
||||
|
||||
@@ -87,7 +87,7 @@ test("saved-session and manual source controls share the acquisition guard", asy
|
||||
"utf8",
|
||||
);
|
||||
|
||||
assert.match(appSource, /blockedReason=\{sourceSwitchBlockedReason\}/);
|
||||
assert.match(appSource, /blockedReason: sourceSwitchBlockedReason/);
|
||||
assert.match(appSource, /disabled=\{sourceSwitchBlocked \|\| !sourceDraft\.trim\(\)\}/);
|
||||
assert.match(appSource, /if \(sourceSwitchBlockedRef\.current\) return;/);
|
||||
assert.match(sessionSelectSource, /replayEnabled: blockedReason === null/);
|
||||
|
||||
@@ -262,12 +262,12 @@ test("scene tool windows are route-scoped and toolbar actions are not duplicated
|
||||
const utilityEnd = appSource.indexOf("const header", utilityStart);
|
||||
const utilitySource = appSource.slice(utilityStart, utilityEnd);
|
||||
|
||||
assert.match(appSource, /open=\{spatialWorkspaceActive && sourceWindowOpen\}/);
|
||||
assert.match(appSource, /open=\{spatialWorkspaceActive && displayWindowOpen\}/);
|
||||
assert.match(appSource, /open=\{spatialWorkspaceActive && layerInspectorOpen\}/);
|
||||
assert.match(appSource, /open=\{sceneWorkspaceActive && sourceWindowOpen\}/);
|
||||
assert.match(appSource, /open=\{sceneWorkspaceActive && displayWindowOpen\}/);
|
||||
assert.match(appSource, /open=\{sceneWorkspaceActive && layerInspectorOpen\}/);
|
||||
assert.match(
|
||||
appSource,
|
||||
/if \(spatialWorkspaceActive\) return;[\s\S]*setSceneWindowOrder\(\[\]\)/,
|
||||
/if \(sceneWorkspaceActive\) return;[\s\S]*setSceneWindowOrder\(\[\]\)/,
|
||||
);
|
||||
assert.doesNotMatch(utilitySource, /Настроить визуальный движок/);
|
||||
assert.doesNotMatch(utilitySource, /Настроить отображение/);
|
||||
|
||||
Reference in New Issue
Block a user