test: confine web fetch key env

This commit is contained in:
Shakker
2026-06-05 02:12:53 +01:00
parent 85e16da2b4
commit afcf1ddb9d

View File

@@ -3,6 +3,7 @@ import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vite
import type { OpenClawConfig } from "../config/types.js";
import type { PluginWebFetchProviderEntry } from "../plugins/types.js";
import type { RuntimeWebFetchMetadata } from "../secrets/runtime-web-tools.types.js";
import { withEnv } from "../test-utils/env.js";
import {
createWebFetchTestProvider,
type WebFetchTestProviderParams,
@@ -95,7 +96,6 @@ describe("web fetch runtime", () => {
});
beforeEach(() => {
vi.unstubAllEnvs();
resolvePluginWebFetchProvidersMock.mockReset();
resolveRuntimeWebFetchProvidersMock.mockReset();
resolvePluginWebFetchProvidersMock.mockReturnValue([]);
@@ -118,9 +118,9 @@ describe("web fetch runtime", () => {
id: "AWS_SECRET_ACCESS_KEY",
});
vi.stubEnv("FIRECRAWL_API_KEY", "");
expect(resolveWebFetchDefinition({ config })).toBeNull();
withEnv({ FIRECRAWL_API_KEY: "" }, () => {
expect(resolveWebFetchDefinition({ config })).toBeNull();
});
});
it("prefers the runtime-selected provider when metadata is available", async () => {
@@ -169,13 +169,14 @@ describe("web fetch runtime", () => {
it("auto-detects providers from provider-declared env vars", () => {
const provider = createFirecrawlProvider();
resolvePluginWebFetchProvidersMock.mockReturnValue([provider]);
vi.stubEnv("FIRECRAWL_API_KEY", "firecrawl-env-key");
const resolved = resolveWebFetchDefinition({
config: {},
withEnv({ FIRECRAWL_API_KEY: "firecrawl-env-key" }, () => {
const resolved = resolveWebFetchDefinition({
config: {},
});
expect(requireResolvedWebFetch(resolved).provider.id).toBe("firecrawl");
});
expect(requireResolvedWebFetch(resolved).provider.id).toBe("firecrawl");
});
it("auto-detects providers from configured fallback credentials", () => {