Files
edgeever/apps/web/src/hooks/useWorkspaceRoute.test.mjs
T
tianma-if 5780e009db feat(ai): retire Paw mode in favor of the assistant Agent
Remove the standalone companion page, discovery hub, and settings tab. Keep the companion runtime, MCP tools, and confirmation cards for Agent mode in the AI assistant.
2026-09-15 22:59:15 +08:00

32 lines
1.4 KiB
JavaScript

import { describe, expect, test } from "bun:test";
import { resolveWorkspaceRoute } from "./useWorkspaceRoute.ts";
describe("workspace route resolution", () => {
test("recognizes the workspace destinations", () => {
expect(resolveWorkspaceRoute("/", "")).toMatchObject({
isTrash: false,
isSettings: false,
isPlugins: false,
isTemplates: false,
isAiPrompts: false,
isExecutionCenter: false,
});
expect(resolveWorkspaceRoute("/", "?view=trash").isTrash).toBe(true);
expect(resolveWorkspaceRoute("/settings", "").isSettings).toBe(true);
expect(resolveWorkspaceRoute("/plugins", "").isPlugins).toBe(true);
expect(resolveWorkspaceRoute("/plugins/org.edgeever.example", "").isPlugins).toBe(true);
expect(resolveWorkspaceRoute("/templates", "").isTemplates).toBe(true);
expect(resolveWorkspaceRoute("/ai-prompts", "").isAiPrompts).toBe(true);
expect(resolveWorkspaceRoute("/execution-center", "").isExecutionCenter).toBe(true);
});
test("only treats the canonical trash query as trash", () => {
expect(resolveWorkspaceRoute("/", "?view=trash&extra=1").isTrash).toBe(false);
expect(resolveWorkspaceRoute("/other", "?view=trash").isTrash).toBe(false);
});
test("extracts a standalone mobile editor return id", () => {
expect(resolveWorkspaceRoute("/", "?mobileEditorReturn=memo-42").mobileEditorReturnMemoId).toBe("memo-42");
});
});