test(workflow-utils): add error path tests for createLlmAdapter
Cover non-ok HTTP response (500) and network failure (ECONNREFUSED). Per review feedback from 星月 🌙 on PR #278.
This commit is contained in:
@@ -51,4 +51,28 @@ describe("createLlmAdapter", () => {
|
|||||||
{ role: "user", content: "trigger text" },
|
{ role: "user", content: "trigger text" },
|
||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("throws on non-ok fetch response", async () => {
|
||||||
|
const fetchMock = vi.fn().mockResolvedValue({
|
||||||
|
ok: false,
|
||||||
|
status: 500,
|
||||||
|
text: async () => "Internal Server Error",
|
||||||
|
});
|
||||||
|
vi.stubGlobal("fetch", fetchMock);
|
||||||
|
|
||||||
|
const provider = { baseUrl: "https://api.example/v1", apiKey: "k", model: "m" };
|
||||||
|
const adapter = createLlmAdapter(provider);
|
||||||
|
|
||||||
|
await expect(adapter(makeCtx("t1", "hi"), "sys")).rejects.toThrow("llm:");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("throws on fetch network failure", async () => {
|
||||||
|
const fetchMock = vi.fn().mockRejectedValue(new Error("ECONNREFUSED"));
|
||||||
|
vi.stubGlobal("fetch", fetchMock);
|
||||||
|
|
||||||
|
const provider = { baseUrl: "https://api.example/v1", apiKey: "k", model: "m" };
|
||||||
|
const adapter = createLlmAdapter(provider);
|
||||||
|
|
||||||
|
await expect(adapter(makeCtx("t1", "hi"), "sys")).rejects.toThrow();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user