mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 19:50:43 +00:00
28 lines
1.2 KiB
TypeScript
28 lines
1.2 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { isOpenAIApiBaseUrl, isOpenAICodexBaseUrl } from "./base-url.js";
|
|
|
|
describe("openai base URL helpers", () => {
|
|
it("recognizes direct OpenAI API routes", () => {
|
|
expect(isOpenAIApiBaseUrl("https://api.openai.com")).toBe(true);
|
|
expect(isOpenAIApiBaseUrl("https://api.openai.com/v1")).toBe(true);
|
|
expect(isOpenAIApiBaseUrl("https://api.openai.com/v1/")).toBe(true);
|
|
});
|
|
|
|
it("rejects proxy or unrelated API routes", () => {
|
|
expect(isOpenAIApiBaseUrl("https://proxy.example.com/v1")).toBe(false);
|
|
expect(isOpenAIApiBaseUrl("https://chatgpt.com/backend-api")).toBe(false);
|
|
expect(isOpenAIApiBaseUrl(undefined)).toBe(false);
|
|
});
|
|
|
|
it("recognizes Codex ChatGPT backend routes", () => {
|
|
expect(isOpenAICodexBaseUrl("https://chatgpt.com/backend-api")).toBe(true);
|
|
expect(isOpenAICodexBaseUrl("https://chatgpt.com/backend-api/")).toBe(true);
|
|
});
|
|
|
|
it("rejects non-Codex backend routes", () => {
|
|
expect(isOpenAICodexBaseUrl("https://api.openai.com/v1")).toBe(false);
|
|
expect(isOpenAICodexBaseUrl("https://chatgpt.com")).toBe(false);
|
|
expect(isOpenAICodexBaseUrl(undefined)).toBe(false);
|
|
});
|
|
});
|