mirror of
https://github.com/pnpm/pnpm.git
synced 2026-01-03 20:48:21 -05:00
36 lines
882 B
TypeScript
36 lines
882 B
TypeScript
import { requestRetryLogger } from '@pnpm/core-loggers'
|
|
import { toOutput$ } from '@pnpm/default-reporter'
|
|
import {
|
|
createStreamParser,
|
|
} from '@pnpm/logger'
|
|
import { take } from 'rxjs/operators'
|
|
import { formatWarn } from '../src/reporterForClient/utils/formatWarn'
|
|
|
|
test('print warning about request retry', (done) => {
|
|
const output$ = toOutput$({
|
|
context: {
|
|
argv: ['install'],
|
|
},
|
|
streamParser: createStreamParser(),
|
|
})
|
|
|
|
requestRetryLogger.debug({
|
|
attempt: 2,
|
|
error: new Error(),
|
|
maxRetries: 5,
|
|
method: 'GET',
|
|
timeout: 12500,
|
|
url: 'https://foo.bar/qar',
|
|
})
|
|
|
|
expect.assertions(1)
|
|
|
|
output$.pipe(take(1)).subscribe({
|
|
complete: () => done(),
|
|
error: done,
|
|
next: output => {
|
|
expect(output).toBe(formatWarn('GET https://foo.bar/qar error (undefined). Will retry in 12.5 seconds. 4 retries left.'))
|
|
},
|
|
})
|
|
})
|