AkurAI Build
Menu

popagent

public

Latest change 7cecf6a89b6f39dae8c5678f5b369014199aeb3c - Add self-hosted Mastra observability by AkurAI Build

import { describe, expect, test } from "bun:test";
import { appRoutePath, parseAppRoute } from "./routes";

describe("browser routes", () => {
  test("maps durable application URLs", () => {
    expect(parseAppRoute("/")).toEqual({ page: "overview" });
    expect(parseAppRoute("/settings/browser")).toEqual({ page: "settings", section: "browser" });
    expect(parseAppRoute("/settings/observability")).toEqual({ page: "settings", section: "observability" });
    expect(parseAppRoute("/settings")).toEqual({ page: "settings", section: "agents" });
    expect(parseAppRoute("/workspaces/my%20repo")).toEqual({ page: "workspace", workspaceId: "my repo" });
    expect(parseAppRoute("/chats/session-1")).toEqual({ page: "chat", sessionId: "session-1" });
  });

  test("generates canonical paths and safely falls back for unknown routes", () => {
    expect(appRoutePath({ page: "settings", section: "browser" })).toBe("/settings/browser");
    expect(appRoutePath({ page: "workspace", workspaceId: "my repo" })).toBe("/workspaces/my%20repo");
    expect(parseAppRoute("/settings/unknown")).toEqual({ page: "overview" });
    expect(parseAppRoute("/chats/%E0%A4%A")).toEqual({ page: "overview" });
  });
});