| 3 | import { MessageV2 } from "../../src/session/message-v2" |
| 4 | |
| 5 | function apiError( |
| 6 | opts: { |
| 7 | headers?: Record<string, string> |
| 8 | message?: string |
| 9 | statusCode?: number |
| 10 | isRetryable?: boolean |
| 11 | responseBody?: string |
| 12 | } = {}, |
| 13 | ): MessageV2.APIError { |
| 14 | return new MessageV2.APIError({ |
| 15 | message: opts.message ?? "boom", |
| 16 | isRetryable: opts.isRetryable ?? true, |
| 17 | statusCode: opts.statusCode, |
| 18 | responseHeaders: opts.headers, |
| 19 | responseBody: opts.responseBody, |
| 20 | }).toObject() as MessageV2.APIError |
| 21 | } |
| 22 | |
| 23 | describe("session.retry.delay", () => { |
| 24 | test("caps delay at 30 seconds when headers missing", () => { |