mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-28 12:01:15 +00:00
test(shared): add unit tests for modelKey (#98795)
This commit is contained in:
28
src/shared/model-key.test.ts
Normal file
28
src/shared/model-key.test.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
// Model key tests cover canonical provider/model key construction.
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { modelKey } from "./model-key.js";
|
||||
|
||||
describe("modelKey", () => {
|
||||
it("joins provider and model into a canonical key", () => {
|
||||
expect(modelKey("openai", "gpt-5")).toBe("openai/gpt-5");
|
||||
expect(modelKey("anthropic", "claude-opus-4-8")).toBe("anthropic/claude-opus-4-8");
|
||||
});
|
||||
|
||||
it("returns the model alone when provider is empty", () => {
|
||||
expect(modelKey("", "gpt-5")).toBe("gpt-5");
|
||||
expect(modelKey(" ", "gpt-5")).toBe("gpt-5");
|
||||
});
|
||||
|
||||
it("returns the provider alone when model is empty", () => {
|
||||
expect(modelKey("openai", "")).toBe("openai");
|
||||
expect(modelKey("openai", " ")).toBe("openai");
|
||||
});
|
||||
|
||||
it("avoids double prefix when model already contains provider prefix", () => {
|
||||
expect(modelKey("openai", "openai/gpt-5")).toBe("openai/gpt-5");
|
||||
});
|
||||
|
||||
it("trims whitespace from both arguments", () => {
|
||||
expect(modelKey(" openai ", " gpt-5 ")).toBe("openai/gpt-5");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user