Increase fallback Retry-After time to 1 minute

This commit is contained in:
Evan Hahn 2022-01-31 15:09:58 -06:00 committed by GitHub
parent b6287f4839
commit 05e5786883
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 25 additions and 20 deletions

View file

@ -5,15 +5,18 @@ import { assert } from 'chai';
import { findRetryAfterTimeFromError } from '../../../jobs/helpers/findRetryAfterTimeFromError';
import { HTTPError } from '../../../textsecure/Errors';
import { MINUTE } from '../../../util/durations';
describe('findRetryAfterTimeFromError', () => {
it('returns 1 second if no Retry-After time is found', () => {
it('returns 1 minute if no Retry-After time is found', () => {
[
undefined,
null,
{},
{ responseHeaders: {} },
{ responseHeaders: { 'retry-after': 'garbage' } },
{ responseHeaders: { 'retry-after': '0.5' } },
{ responseHeaders: { 'retry-after': '12.34' } },
{
httpError: new HTTPError('Slow down', {
code: 413,
@ -29,20 +32,20 @@ describe('findRetryAfterTimeFromError', () => {
}),
},
].forEach(input => {
assert.strictEqual(findRetryAfterTimeFromError(input), 1000);
assert.strictEqual(findRetryAfterTimeFromError(input), MINUTE);
});
});
it("returns 1 second if a Retry-After time is found, but it's less than 1 second", () => {
['0', '-99', '0.5'].forEach(headerValue => {
['0', '-99'].forEach(headerValue => {
const input = { responseHeaders: { 'retry-after': headerValue } };
assert.strictEqual(findRetryAfterTimeFromError(input), 1000);
});
});
it('returns 1 second for extremely large numbers', () => {
it('returns 1 minute for extremely large numbers', () => {
const input = { responseHeaders: { 'retry-after': '999999999999999999' } };
assert.strictEqual(findRetryAfterTimeFromError(input), 1000);
assert.strictEqual(findRetryAfterTimeFromError(input), MINUTE);
});
it('finds the retry-after time on top-level response headers', () => {