Files
OpenHands/__tests__/utils/base-path.test.ts
T
519c856c37 feat: support serving Canvas under a subpath (#1796)
* feat: support serving canvas under subpath

Co-authored-by: openhands <openhands@all-hands.dev>

* fix: redirect root app routes to canvas base path

Co-authored-by: openhands <openhands@all-hands.dev>

---------

Co-authored-by: openhands <openhands@all-hands.dev>
Co-authored-by: hieptl <hieptl.developer@gmail.com>
2026-07-15 12:24:11 -04:00

35 lines
1.0 KiB
TypeScript

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");
});
});