feat: configurable status code behaviours (#340)

This commit is contained in:
Andrew Mackrodt
2020-09-29 14:54:26 +01:00
committed by GitHub
parent 7d8897cd9f
commit 3b7487e97a
7 changed files with 115 additions and 41 deletions
+20
View File
@@ -1,6 +1,7 @@
import {Browser, Page, Response} from 'puppeteer';
import {Config} from './config';
import {Logger} from './logger';
import {StatusCodeRangeArray} from './store/model';
import {disableBlockerInPage} from './adblocker';
export function getSleepTime() {
@@ -13,6 +14,25 @@ export async function delay(ms: number) {
});
}
export function isStatusCodeInRange(statusCode: number, range: StatusCodeRangeArray) {
for (const value of range) {
let min: number;
let max: number;
if (typeof value === 'number') {
min = value;
max = value;
} else {
[min, max] = value;
}
if (min <= statusCode && statusCode <= max) {
return true;
}
}
return false;
}
export async function usingResponse<T>(
browser: Browser,
url: string,