Files
OmniRoute/tests/unit/provider-specific-data-schema.test.ts
Randi fbdce3a941 feat: add OpenRouter connection presets (#3878)
Integrated into release/v3.8.26
2026-06-15 12:21:41 -03:00

174 lines
4.6 KiB
TypeScript

import test from "node:test";
import assert from "node:assert/strict";
const { createProviderSchema, updateProviderConnectionSchema } =
await import("../../src/shared/validation/schemas.ts");
test("provider schemas accept boolean openaiStoreEnabled in providerSpecificData", () => {
const created = createProviderSchema.safeParse({
provider: "codex",
apiKey: "token",
name: "Codex",
providerSpecificData: {
openaiStoreEnabled: true,
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
openaiStoreEnabled: false,
},
});
assert.equal(created.success, true);
assert.equal(updated.success, true);
});
test("provider schemas reject non-boolean openaiStoreEnabled values", () => {
const created = createProviderSchema.safeParse({
provider: "codex",
apiKey: "token",
name: "Codex",
providerSpecificData: {
openaiStoreEnabled: "yes",
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
openaiStoreEnabled: "no",
},
});
assert.equal(created.success, false);
assert.equal(updated.success, false);
});
test("provider schemas accept boolean requestDefaults.context1m for CC-compatible providers", () => {
const created = createProviderSchema.safeParse({
provider: "anthropic-compatible-cc-demo",
apiKey: "token",
name: "CC Compatible",
providerSpecificData: {
requestDefaults: {
context1m: true,
},
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
requestDefaults: {
context1m: false,
},
},
});
assert.equal(created.success, true);
assert.equal(updated.success, true);
});
test("provider schemas reject non-boolean requestDefaults.context1m values", () => {
const created = createProviderSchema.safeParse({
provider: "anthropic-compatible-cc-demo",
apiKey: "token",
name: "CC Compatible",
providerSpecificData: {
requestDefaults: {
context1m: "yes",
},
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
requestDefaults: {
context1m: 1,
},
},
});
assert.equal(created.success, false);
assert.equal(updated.success, false);
});
test("provider schemas accept Codex default priority and flex service tiers", () => {
for (const serviceTier of ["default", "priority", "fast", "flex"]) {
const created = createProviderSchema.safeParse({
provider: "codex",
apiKey: "token",
name: "Codex",
providerSpecificData: {
requestDefaults: { serviceTier },
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
requestDefaults: { serviceTier },
},
});
assert.equal(created.success, true, serviceTier);
assert.equal(updated.success, true, serviceTier);
}
});
test("provider schemas reject unknown Codex service tiers", () => {
const created = createProviderSchema.safeParse({
provider: "codex",
apiKey: "token",
name: "Codex",
providerSpecificData: {
requestDefaults: { serviceTier: "turbo" },
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
requestDefaults: { serviceTier: "turbo" },
},
});
assert.equal(created.success, false);
assert.equal(updated.success, false);
});
test("provider schemas accept OpenRouter preset in providerSpecificData", () => {
const created = createProviderSchema.safeParse({
provider: "openrouter",
apiKey: "token",
name: "OpenRouter",
providerSpecificData: {
preset: "email-copywriter",
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
preset: "code-reviewer",
},
});
const padded = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
preset: `${" ".repeat(120)}prefer${" ".repeat(120)}`,
},
});
assert.equal(created.success, true);
assert.equal(updated.success, true);
assert.equal(padded.success, true);
});
test("provider schemas reject oversized OpenRouter preset values", () => {
const created = createProviderSchema.safeParse({
provider: "openrouter",
apiKey: "token",
name: "OpenRouter",
providerSpecificData: {
preset: "x".repeat(201),
},
});
const updated = updateProviderConnectionSchema.safeParse({
providerSpecificData: {
preset: 123,
},
});
assert.equal(created.success, false);
assert.equal(updated.success, false);
});