(res: Response, expectedStatus = 200)
| 414 | } |
| 415 | |
| 416 | async function expectChatContent(res: Response, expectedStatus = 200): Promise<string> { |
| 417 | const payload = await readResponseBody(res); |
| 418 | if (res.status !== expectedStatus) { |
| 419 | throw new Error(`Expected ${expectedStatus}, got ${res.status}: ${payload.text.slice(0, 300)}`); |
| 420 | } |
| 421 | const content = extractFirstMessageContent(payload); |
| 422 | if (!content) throw new Error(`Missing chat content: ${payload.text.slice(0, 300)}`); |
| 423 | return content; |
| 424 | } |
| 425 | |
| 426 | function countMockChatRequests(mock: MockUpstream, since = 0): number { |
| 427 | return mock.requests.slice(since).filter((r) => r.path === "/v1/chat/completions").length; |
no test coverage detected