mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-12 16:30:44 +00:00
40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
import { beforeAll, describe, expect, it, vi } from "vitest";
|
|
|
|
vi.unmock("../secrets/provider-env-vars.js");
|
|
|
|
let collectProviderApiKeys: typeof import("./live-auth-keys.js").collectProviderApiKeys;
|
|
|
|
async function loadModulesForTest(): Promise<void> {
|
|
vi.resetModules();
|
|
vi.doUnmock("../secrets/provider-env-vars.js");
|
|
({ collectProviderApiKeys } = await import("./live-auth-keys.js"));
|
|
}
|
|
|
|
describe("collectProviderApiKeys", () => {
|
|
beforeAll(async () => {
|
|
await loadModulesForTest();
|
|
});
|
|
|
|
it("honors provider auth env vars with nonstandard names", async () => {
|
|
const env = { MODELSTUDIO_API_KEY: "modelstudio-live-key" };
|
|
|
|
expect(
|
|
collectProviderApiKeys("alibaba", {
|
|
env,
|
|
providerEnvVars: ["MODELSTUDIO_API_KEY", "DASHSCOPE_API_KEY"],
|
|
}),
|
|
).toEqual(["modelstudio-live-key"]);
|
|
});
|
|
|
|
it("dedupes manifest env vars against direct provider env naming", async () => {
|
|
const env = { XAI_API_KEY: "xai-live-key" };
|
|
|
|
expect(
|
|
collectProviderApiKeys("xai", {
|
|
env,
|
|
providerEnvVars: ["XAI_API_KEY"],
|
|
}),
|
|
).toEqual(["xai-live-key"]);
|
|
});
|
|
});
|