test(image): isolate provider registry mock

This commit is contained in:
Peter Steinberger
2026-04-29 14:02:25 +01:00
parent 6fcddbbd96
commit 16f604d7e7

View File

@@ -1,6 +1,7 @@
import { beforeEach, describe, expect, it, vi } from "vitest";
import type { OpenClawConfig } from "../config/types.js";
import type { ImageGenerationProviderPlugin } from "../plugins/types.js";
import type * as ProviderRegistry from "./provider-registry.js";
const { resolvePluginCapabilityProvidersMock } = vi.hoisted(() => ({
resolvePluginCapabilityProvidersMock: vi.fn<() => ImageGenerationProviderPlugin[]>(() => []),
@@ -10,8 +11,8 @@ vi.mock("../plugins/capability-provider-runtime.js", () => ({
resolvePluginCapabilityProviders: resolvePluginCapabilityProvidersMock,
}));
const { getImageGenerationProvider, listImageGenerationProviders } =
await import("./provider-registry.js");
let getImageGenerationProvider: typeof ProviderRegistry.getImageGenerationProvider;
let listImageGenerationProviders: typeof ProviderRegistry.listImageGenerationProviders;
function createProvider(
params: Pick<ImageGenerationProviderPlugin, "id"> & Partial<ImageGenerationProviderPlugin>,
@@ -30,9 +31,12 @@ function createProvider(
}
describe("image-generation provider registry", () => {
beforeEach(() => {
beforeEach(async () => {
vi.resetModules();
resolvePluginCapabilityProvidersMock.mockReset();
resolvePluginCapabilityProvidersMock.mockReturnValue([]);
({ getImageGenerationProvider, listImageGenerationProviders } =
await import("./provider-registry.js"));
});
it("delegates provider resolution to the capability provider boundary", () => {