e2ed
Version:
E2E testing framework over Playwright
39 lines (38 loc) • 1.22 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.pageWaitForRequest = exports.waitForRequestCalls = void 0;
const internal_1 = require("../../constants/internal");
/**
* `pageWaitForRequest` calls.
* @internal
*/
exports.waitForRequestCalls = [];
/**
* `page.waitForRequest` wrapper to support tab switching.
* @internal
*/
const pageWaitForRequest = (page, predicate, options) => {
let isDisabled = false;
const disablePredicate = () => {
isDisabled = true;
};
const disableablePredicate = (request) => {
if (isDisabled) {
return true;
}
return predicate(request);
};
return new Promise((resolve, reject) => {
exports.waitForRequestCalls.push({ disablePredicate, options, predicate, reject, resolve });
page.waitForRequest(disableablePredicate, options).then((request) => {
if (!isDisabled) {
resolve(request);
}
}, (error) => {
if (!isDisabled && !String(error).includes(internal_1.TEST_ENDED_ERROR_MESSAGE)) {
reject(error);
}
});
});
};
exports.pageWaitForRequest = pageWaitForRequest;