mirror of
https://github.com/actions/github-script.git
synced 2025-12-08 16:16:21 +00:00
42 lines
1.3 KiB
TypeScript
42 lines
1.3 KiB
TypeScript
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
|
|
import {getRetryOptions} from '../src/retry-options'
|
|
|
|
describe('getRequestOptions', () => {
|
|
test('retries disabled if retries == 0', async () => {
|
|
const [retryOptions, requestOptions] = getRetryOptions(0, [400, 500, 502])
|
|
|
|
expect(retryOptions.enabled).toBe(false)
|
|
expect(retryOptions.doNotRetry).toBeFalsy()
|
|
|
|
expect(requestOptions.retries).toBeFalsy()
|
|
})
|
|
|
|
test('properties set if retries > 0', async () => {
|
|
const [retryOptions, requestOptions] = getRetryOptions(1, [400, 500, 502])
|
|
|
|
expect(retryOptions.enabled).toBe(true)
|
|
expect(retryOptions.doNotRetry).toEqual([400, 500, 502])
|
|
|
|
expect(requestOptions.retries).toEqual(1)
|
|
})
|
|
|
|
test('properties set if retries > 0', async () => {
|
|
const [retryOptions, requestOptions] = getRetryOptions(1, [400, 500, 502])
|
|
|
|
expect(retryOptions.enabled).toBe(true)
|
|
expect(retryOptions.doNotRetry).toEqual([400, 500, 502])
|
|
|
|
expect(requestOptions.retries).toEqual(1)
|
|
})
|
|
|
|
test('retryOptions.doNotRetry not set if exemptStatusCodes isEmpty', async () => {
|
|
const [retryOptions, requestOptions] = getRetryOptions(1, [])
|
|
|
|
expect(retryOptions.enabled).toBe(true)
|
|
expect(retryOptions.doNotRetry).toBeUndefined()
|
|
|
|
expect(requestOptions.retries).toEqual(1)
|
|
})
|
|
})
|