From 53c1ae229fe6ee90c4db5ca55f4e44ecbce077e4 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 7 Mar 2026 17:18:37 +0000 Subject: [PATCH] refactor(agents): dedupe minimax api-key normalization tests --- .../minimax-vlm.normalizes-api-key.test.ts | 48 ++++++------------- 1 file changed, 15 insertions(+), 33 deletions(-) diff --git a/src/agents/minimax-vlm.normalizes-api-key.test.ts b/src/agents/minimax-vlm.normalizes-api-key.test.ts index effebb88816..faa33b8682c 100644 --- a/src/agents/minimax-vlm.normalizes-api-key.test.ts +++ b/src/agents/minimax-vlm.normalizes-api-key.test.ts @@ -3,30 +3,31 @@ import { withFetchPreconnect } from "../test-utils/fetch-mock.js"; describe("minimaxUnderstandImage apiKey normalization", () => { const priorFetch = global.fetch; + const apiResponse = JSON.stringify({ + base_resp: { status_code: 0, status_msg: "ok" }, + content: "ok", + }); afterEach(() => { global.fetch = priorFetch; vi.restoreAllMocks(); }); - it("strips embedded CR/LF before sending Authorization header", async () => { + async function runNormalizationCase(apiKey: string) { const fetchSpy = vi.fn(async (_input: RequestInfo | URL, init?: RequestInit) => { const auth = (init?.headers as Record | undefined)?.Authorization; expect(auth).toBe("Bearer minimax-test-key"); - return new Response( - JSON.stringify({ - base_resp: { status_code: 0, status_msg: "ok" }, - content: "ok", - }), - { status: 200, headers: { "Content-Type": "application/json" } }, - ); + return new Response(apiResponse, { + status: 200, + headers: { "Content-Type": "application/json" }, + }); }); global.fetch = withFetchPreconnect(fetchSpy); const { minimaxUnderstandImage } = await import("./minimax-vlm.js"); const text = await minimaxUnderstandImage({ - apiKey: "minimax-test-\r\nkey", + apiKey, prompt: "hi", imageDataUrl: "data:image/png;base64,AAAA", apiHost: "https://api.minimax.io", @@ -34,32 +35,13 @@ describe("minimaxUnderstandImage apiKey normalization", () => { expect(text).toBe("ok"); expect(fetchSpy).toHaveBeenCalled(); + } + + it("strips embedded CR/LF before sending Authorization header", async () => { + await runNormalizationCase("minimax-test-\r\nkey"); }); it("drops non-Latin1 characters from apiKey before sending Authorization header", async () => { - const fetchSpy = vi.fn(async (_input: RequestInfo | URL, init?: RequestInit) => { - const auth = (init?.headers as Record | undefined)?.Authorization; - expect(auth).toBe("Bearer minimax-test-key"); - - return new Response( - JSON.stringify({ - base_resp: { status_code: 0, status_msg: "ok" }, - content: "ok", - }), - { status: 200, headers: { "Content-Type": "application/json" } }, - ); - }); - global.fetch = withFetchPreconnect(fetchSpy); - - const { minimaxUnderstandImage } = await import("./minimax-vlm.js"); - const text = await minimaxUnderstandImage({ - apiKey: "minimax-\u0417\u2502test-key", - prompt: "hi", - imageDataUrl: "data:image/png;base64,AAAA", - apiHost: "https://api.minimax.io", - }); - - expect(text).toBe("ok"); - expect(fetchSpy).toHaveBeenCalled(); + await runNormalizationCase("minimax-\u0417\u2502test-key"); }); });