Challenge: If no retry-after header on 428, don't start timer for retry
This commit is contained in:
parent
9921a07a0b
commit
1d26424f22
5 changed files with 58 additions and 34 deletions
|
@ -4,25 +4,25 @@
|
|||
import { assert } from 'chai';
|
||||
import { MINUTE } from '../../util/durations';
|
||||
|
||||
import { parseRetryAfter } from '../../util/parseRetryAfter';
|
||||
import { parseRetryAfterWithDefault } from '../../util/parseRetryAfter';
|
||||
|
||||
describe('parseRetryAfter', () => {
|
||||
it('should return 1 minute when passed non-strings', () => {
|
||||
assert.equal(parseRetryAfter(undefined), MINUTE);
|
||||
assert.equal(parseRetryAfter(1234), MINUTE);
|
||||
assert.equal(parseRetryAfterWithDefault(undefined), MINUTE);
|
||||
assert.equal(parseRetryAfterWithDefault(1234), MINUTE);
|
||||
});
|
||||
|
||||
it('should return 1 minute with invalid strings', () => {
|
||||
assert.equal(parseRetryAfter('nope'), MINUTE);
|
||||
assert.equal(parseRetryAfter('1ff'), MINUTE);
|
||||
assert.equal(parseRetryAfterWithDefault('nope'), MINUTE);
|
||||
assert.equal(parseRetryAfterWithDefault('1ff'), MINUTE);
|
||||
});
|
||||
|
||||
it('should return milliseconds on valid input', () => {
|
||||
assert.equal(parseRetryAfter('100'), 100000);
|
||||
assert.equal(parseRetryAfterWithDefault('100'), 100000);
|
||||
});
|
||||
|
||||
it('should return 1 second at minimum', () => {
|
||||
assert.equal(parseRetryAfter('0'), 1000);
|
||||
assert.equal(parseRetryAfter('-1'), 1000);
|
||||
assert.equal(parseRetryAfterWithDefault('0'), 1000);
|
||||
assert.equal(parseRetryAfterWithDefault('-1'), 1000);
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue