Skip to content

Commit dda2cf4

Browse files
committed
test(qa-lab): use OpenAI plugin for mock image generation
1 parent 994bfc1 commit dda2cf4

2 files changed

Lines changed: 13 additions & 7 deletions

File tree

extensions/qa-lab/src/providers/image-generation.test.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,18 @@ import { describe, expect, it } from "vitest";
22
import { buildQaImageGenerationConfigPatch } from "./image-generation.js";
33

44
describe("QA provider image generation config", () => {
5-
it("uses the selected mock provider for mock-openai image generation", () => {
5+
it("uses the OpenAI image provider against the selected mock-openai endpoint", () => {
66
const patch = buildQaImageGenerationConfigPatch({
77
providerMode: "mock-openai",
88
providerBaseUrl: "http://127.0.0.1:44080/v1",
99
requiredPluginIds: ["qa-channel"],
1010
});
1111

12-
expect(patch.plugins.allow).toEqual(["acpx", "memory-core", "qa-channel"]);
13-
expect(patch.agents.defaults.imageGenerationModel.primary).toBe("mock-openai/gpt-image-1");
12+
expect(patch.plugins.allow).toEqual(["acpx", "memory-core", "openai", "qa-channel"]);
13+
expect(patch.plugins.entries?.openai).toEqual({ enabled: true });
14+
expect(patch.agents.defaults.imageGenerationModel.primary).toBe("openai/gpt-image-1");
1415
expect(patch.models?.providers["mock-openai"]?.baseUrl).toBe("http://127.0.0.1:44080/v1");
16+
expect(patch.models?.providers.openai?.baseUrl).toBe("http://127.0.0.1:44080/v1");
1517
});
1618

1719
it("preserves already-allowed plugins when configuring image generation", () => {

extensions/qa-lab/src/providers/image-generation.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,12 @@ function uniqueNonEmpty(values: readonly (string | null | undefined)[]) {
2222

2323
export function buildQaImageGenerationConfigPatch(input: QaImageGenerationPatchInput) {
2424
const provider = getQaProvider(input.providerMode);
25-
const imageModelRef = provider.defaultImageGenerationModel({
26-
modelProviderIds: provider.defaultImageGenerationProviderIds,
27-
});
25+
const usesOpenAiMockImageProvider = input.providerMode === "mock-openai";
26+
const imageModelRef = usesOpenAiMockImageProvider
27+
? "openai/gpt-image-1"
28+
: provider.defaultImageGenerationModel({
29+
modelProviderIds: provider.defaultImageGenerationProviderIds,
30+
});
2831
if (!imageModelRef) {
2932
throw new Error(
3033
`QA provider "${input.providerMode}" does not expose an image generation model`,
@@ -42,7 +45,8 @@ export function buildQaImageGenerationConfigPatch(input: QaImageGenerationPatchI
4245
providerBaseUrl: input.providerBaseUrl,
4346
});
4447
})();
45-
const providerPluginIds = provider.usesModelProviderPlugins ? [imageProviderId] : [];
48+
const providerPluginIds =
49+
provider.usesModelProviderPlugins || usesOpenAiMockImageProvider ? [imageProviderId] : [];
4650
const enabledPluginIds = uniqueNonEmpty(providerPluginIds);
4751

4852
return {

0 commit comments

Comments
 (0)