mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 05:40:44 +00:00
test(qa-lab): use OpenAI plugin for mock image generation
This commit is contained in:
@@ -2,16 +2,18 @@ import { describe, expect, it } from "vitest";
|
||||
import { buildQaImageGenerationConfigPatch } from "./image-generation.js";
|
||||
|
||||
describe("QA provider image generation config", () => {
|
||||
it("uses the selected mock provider for mock-openai image generation", () => {
|
||||
it("uses the OpenAI image provider against the selected mock-openai endpoint", () => {
|
||||
const patch = buildQaImageGenerationConfigPatch({
|
||||
providerMode: "mock-openai",
|
||||
providerBaseUrl: "http://127.0.0.1:44080/v1",
|
||||
requiredPluginIds: ["qa-channel"],
|
||||
});
|
||||
|
||||
expect(patch.plugins.allow).toEqual(["acpx", "memory-core", "qa-channel"]);
|
||||
expect(patch.agents.defaults.imageGenerationModel.primary).toBe("mock-openai/gpt-image-1");
|
||||
expect(patch.plugins.allow).toEqual(["acpx", "memory-core", "openai", "qa-channel"]);
|
||||
expect(patch.plugins.entries?.openai).toEqual({ enabled: true });
|
||||
expect(patch.agents.defaults.imageGenerationModel.primary).toBe("openai/gpt-image-1");
|
||||
expect(patch.models?.providers["mock-openai"]?.baseUrl).toBe("http://127.0.0.1:44080/v1");
|
||||
expect(patch.models?.providers.openai?.baseUrl).toBe("http://127.0.0.1:44080/v1");
|
||||
});
|
||||
|
||||
it("preserves already-allowed plugins when configuring image generation", () => {
|
||||
|
||||
@@ -22,9 +22,12 @@ function uniqueNonEmpty(values: readonly (string | null | undefined)[]) {
|
||||
|
||||
export function buildQaImageGenerationConfigPatch(input: QaImageGenerationPatchInput) {
|
||||
const provider = getQaProvider(input.providerMode);
|
||||
const imageModelRef = provider.defaultImageGenerationModel({
|
||||
modelProviderIds: provider.defaultImageGenerationProviderIds,
|
||||
});
|
||||
const usesOpenAiMockImageProvider = input.providerMode === "mock-openai";
|
||||
const imageModelRef = usesOpenAiMockImageProvider
|
||||
? "openai/gpt-image-1"
|
||||
: provider.defaultImageGenerationModel({
|
||||
modelProviderIds: provider.defaultImageGenerationProviderIds,
|
||||
});
|
||||
if (!imageModelRef) {
|
||||
throw new Error(
|
||||
`QA provider "${input.providerMode}" does not expose an image generation model`,
|
||||
@@ -42,7 +45,8 @@ export function buildQaImageGenerationConfigPatch(input: QaImageGenerationPatchI
|
||||
providerBaseUrl: input.providerBaseUrl,
|
||||
});
|
||||
})();
|
||||
const providerPluginIds = provider.usesModelProviderPlugins ? [imageProviderId] : [];
|
||||
const providerPluginIds =
|
||||
provider.usesModelProviderPlugins || usesOpenAiMockImageProvider ? [imageProviderId] : [];
|
||||
const enabledPluginIds = uniqueNonEmpty(providerPluginIds);
|
||||
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user