

















@@ -1,8 +1,14 @@
1-import { describe, expect, it } from "vitest";
1+import { importFreshModule } from "openclaw/plugin-sdk/test-fixtures";
2+import { afterEach, describe, expect, it, vi } from "vitest";
23import type { ModelProviderConfig } from "../config/types.models.js";
34import { resolveBundledProviderPolicySurface } from "./provider-public-artifacts.js";
4556describe("provider public artifacts", () => {
7+afterEach(() => {
8+vi.doUnmock("./public-surface-loader.js");
9+vi.resetModules();
10+});
11+612it("loads a lightweight bundled provider policy artifact smoke", () => {
713const surface = resolveBundledProviderPolicySurface("openai");
814expect(surface?.normalizeConfig).toBeTypeOf("function");
@@ -19,4 +25,26 @@ describe("provider public artifacts", () => {
1925}),
2026).toBe(providerConfig);
2127});
28+29+it("loads provider policy surfaces without staging runtime deps", async () => {
30+const loadBundledPluginPublicArtifactModuleSync = vi.fn(() => ({
31+normalizeConfig: (ctx: { providerConfig: ModelProviderConfig }) => ctx.providerConfig,
32+}));
33+vi.doMock("./public-surface-loader.js", () => ({
34+ loadBundledPluginPublicArtifactModuleSync,
35+}));
36+vi.resetModules();
37+38+const { resolveBundledProviderPolicySurface: resolvePolicySurface } = await importFreshModule<
39+typeof import("./provider-public-artifacts.js")
40+>(import.meta.url, "./provider-public-artifacts.js?scope=no-runtime-deps");
41+42+const surface = resolvePolicySurface("openai");
43+expect(surface?.normalizeConfig).toBeTypeOf("function");
44+expect(loadBundledPluginPublicArtifactModuleSync).toHaveBeenCalledWith({
45+dirName: "openai",
46+artifactBasename: "provider-policy-api.js",
47+installRuntimeDeps: false,
48+});
49+});
2250});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。