AkurAI Build
Menu

popagent

public

Latest change 6edc7e928c57dab23c0973ed3f7ee70b3ebb72d5 - Initial popagent baseline 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")).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" });
  });
});