File size: 1,063 Bytes
3201ca6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import { afterEach, describe, expect, it, vi } from "vitest";
import {
  buildAgentCanvasPath,
  getAgentCanvasBasePath,
} from "#/utils/base-path";

afterEach(() => {
  vi.unstubAllEnvs();
  delete (window as unknown as Record<string, unknown>)
    .__AGENT_CANVAS_BASE_PATH__;
});

describe("Agent Canvas base path", () => {
  it("defaults to root paths", () => {
    expect(getAgentCanvasBasePath()).toBe("");
    expect(buildAgentCanvasPath("/settings")).toBe("/settings");
  });

  it("uses the build-time VITE_BASE_PATH when configured", () => {
    vi.stubEnv("VITE_BASE_PATH", "/canvas/");

    expect(getAgentCanvasBasePath()).toBe("/canvas");
    expect(buildAgentCanvasPath("/settings")).toBe("/canvas/settings");
  });

  it("falls back to the runtime-injected base path", () => {
    vi.stubEnv("VITE_BASE_PATH", "");
    (window as unknown as Record<string, unknown>).__AGENT_CANVAS_BASE_PATH__ =
      "canvas";

    expect(getAgentCanvasBasePath()).toBe("/canvas");
    expect(buildAgentCanvasPath("settings")).toBe("/canvas/settings");
  });
});