

























@@ -9,6 +9,14 @@ import {
99} from "./provider-test-helpers.test.js";
1010import { buildVydraVideoGenerationProvider } from "./video-generation-provider.js";
111112+function fetchCall(fetchMock: ReturnType<typeof vi.fn>, index: number) {
13+const call = fetchMock.mock.calls[index];
14+if (!call) {
15+throw new Error(`expected fetch call ${index}`);
16+}
17+return call;
18+}
19+1220describe("vydra video-generation provider", () => {
1321installPinnedHostnameTestHooks();
1422@@ -41,14 +49,14 @@ describe("vydra video-generation provider", () => {
4149cfg: {},
4250});
435144-const createCall = fetchMock.mock.calls.at(0);
45-expect(createCall?.[0]).toBe("https://www.vydra.ai/api/v1/models/veo3");
46-const createInit = createCall?.[1] as { method?: string; body?: unknown } | undefined;
52+const createCall = fetchCall(fetchMock, 0);
53+expect(createCall[0]).toBe("https://www.vydra.ai/api/v1/models/veo3");
54+const createInit = createCall[1] as { method?: string; body?: unknown } | undefined;
4755expect(createInit?.method).toBe("POST");
4856expect(createInit?.body).toBe(JSON.stringify({ prompt: "tiny city at sunrise" }));
49-const pollCall = fetchMock.mock.calls.at(1);
50-expect(pollCall?.[0]).toBe("https://www.vydra.ai/api/v1/jobs/job-123");
51-const pollInit = pollCall?.[1] as { method?: string } | undefined;
57+const pollCall = fetchCall(fetchMock, 1);
58+expect(pollCall[0]).toBe("https://www.vydra.ai/api/v1/jobs/job-123");
59+const pollInit = pollCall[1] as { method?: string } | undefined;
5260expect(pollInit?.method).toBe("GET");
5361expect(result.videos).toHaveLength(1);
5462const [video] = result.videos;
@@ -101,9 +109,9 @@ describe("vydra video-generation provider", () => {
101109inputImages: [{ url: "https://example.com/reference.png" }],
102110});
103111104-const createCall = fetchMock.mock.calls.at(0);
105-expect(createCall?.[0]).toBe("https://www.vydra.ai/api/v1/models/kling");
106-const createInit = createCall?.[1] as { method?: string; body?: unknown } | undefined;
112+const createCall = fetchCall(fetchMock, 0);
113+expect(createCall[0]).toBe("https://www.vydra.ai/api/v1/models/kling");
114+const createInit = createCall[1] as { method?: string; body?: unknown } | undefined;
107115expect(createInit?.method).toBe("POST");
108116expect(createInit?.body).toBe(
109117JSON.stringify({
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。