Skip to content

Commit dda99df

Browse files
committed
test(huggingface): avoid unbound reader assertions
1 parent 58a611a commit dda99df

1 file changed

Lines changed: 19 additions & 10 deletions

File tree

extensions/huggingface/models.test.ts

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -121,43 +121,52 @@ describe("huggingface models", () => {
121121
process.env.VITEST = "false";
122122
process.env.NODE_ENV = "development";
123123
const chunk = new Uint8Array(1024 * 1024);
124+
const read = vi.fn(async () => ({ done: false as const, value: chunk }));
124125
const cancel = vi.fn(async () => undefined);
125126
const releaseLock = vi.fn();
126127
const reader = {
127-
read: vi.fn(async () => ({ done: false as const, value: chunk })),
128+
read,
128129
cancel,
129130
releaseLock,
130131
} as unknown as ReadableStreamDefaultReader<Uint8Array>;
131-
vi.stubGlobal("fetch", vi.fn(async () => responseFromReader(reader)));
132+
vi.stubGlobal(
133+
"fetch",
134+
vi.fn(async () => responseFromReader(reader)),
135+
);
132136

133137
const models = await discoverHuggingfaceModels("hf_test_token");
134138

135139
expect(models.map((m) => m.id)).toEqual(HUGGINGFACE_MODEL_CATALOG.map((m) => m.id));
136140
expect(cancel).toHaveBeenCalledTimes(1);
137141
expect(releaseLock).toHaveBeenCalledTimes(1);
138-
expect(reader.read).toHaveBeenCalledTimes(17);
142+
expect(read).toHaveBeenCalledTimes(17);
139143
});
140144

141145
it("parses a valid bounded discovery response", async () => {
142146
process.env.VITEST = "false";
143147
process.env.NODE_ENV = "development";
144148
const modelId = "test-org/test-model";
145149
const body = new TextEncoder().encode(JSON.stringify({ data: [{ id: modelId }] }));
150+
const read = vi
151+
.fn()
152+
.mockResolvedValueOnce({ done: false, value: body })
153+
.mockResolvedValueOnce({ done: true, value: undefined });
154+
const cancel = vi.fn(async () => undefined);
146155
const releaseLock = vi.fn();
147156
const reader = {
148-
read: vi
149-
.fn()
150-
.mockResolvedValueOnce({ done: false, value: body })
151-
.mockResolvedValueOnce({ done: true, value: undefined }),
152-
cancel: vi.fn(async () => undefined),
157+
read,
158+
cancel,
153159
releaseLock,
154160
} as unknown as ReadableStreamDefaultReader<Uint8Array>;
155-
vi.stubGlobal("fetch", vi.fn(async () => responseFromReader(reader)));
161+
vi.stubGlobal(
162+
"fetch",
163+
vi.fn(async () => responseFromReader(reader)),
164+
);
156165

157166
const models = await discoverHuggingfaceModels("hf_test_token");
158167

159168
expect(models.some((model) => model.id === modelId)).toBe(true);
160-
expect(reader.cancel).not.toHaveBeenCalled();
169+
expect(cancel).not.toHaveBeenCalled();
161170
expect(releaseLock).toHaveBeenCalledTimes(1);
162171
});
163172

0 commit comments

Comments
 (0)