test: share provider catalog fixtures

This commit is contained in:
Peter Steinberger
2026-04-21 00:29:09 +01:00
parent 3b1ef4354f
commit 883f66eef3
5 changed files with 91 additions and 128 deletions

View File

@@ -1,6 +1,7 @@
import { describe, expect, it } from "vitest";
import { resolveProviderPluginChoice } from "../../src/plugins/provider-auth-choice.runtime.js";
import { registerSingleProviderPlugin } from "../../test/helpers/plugins/plugin-registration.js";
import { runSingleProviderCatalog } from "../test-support/provider-model-test-helpers.js";
import deepseekPlugin from "./index.js";
describe("deepseek provider plugin", () => {
@@ -22,32 +23,16 @@ describe("deepseek provider plugin", () => {
it("builds the static DeepSeek model catalog", async () => {
const provider = await registerSingleProviderPlugin(deepseekPlugin);
expect(provider.catalog).toBeDefined();
const catalogProvider = await runSingleProviderCatalog(provider);
const catalog = await provider.catalog!.run({
config: {},
env: {},
resolveProviderApiKey: () => ({ apiKey: "test-key" }),
resolveProviderAuth: () => ({
apiKey: "test-key",
mode: "api_key",
source: "env",
}),
} as never);
expect(catalog && "provider" in catalog).toBe(true);
if (!catalog || !("provider" in catalog)) {
throw new Error("expected single-provider catalog");
}
expect(catalog.provider.api).toBe("openai-completions");
expect(catalog.provider.baseUrl).toBe("https://api.deepseek.com");
expect(catalog.provider.models?.map((model) => model.id)).toEqual([
expect(catalogProvider.api).toBe("openai-completions");
expect(catalogProvider.baseUrl).toBe("https://api.deepseek.com");
expect(catalogProvider.models?.map((model) => model.id)).toEqual([
"deepseek-chat",
"deepseek-reasoner",
]);
expect(
catalog.provider.models?.find((model) => model.id === "deepseek-reasoner")?.reasoning,
catalogProvider.models?.find((model) => model.id === "deepseek-reasoner")?.reasoning,
).toBe(true);
});