UNPKG

e2ed

Version:

E2E testing framework over Playwright

34 lines (33 loc) 1.87 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.runTestFn = void 0; const testRunPromise_1 = require("../../context/testRunPromise"); const testTimeout_1 = require("../../context/testTimeout"); const config_1 = require("../config"); const events_1 = require("../events"); const fullMocks_1 = require("../fullMocks"); const getDurationWithUnits_1 = require("../getDurationWithUnits"); const log_1 = require("../log"); const promise_1 = require("../promise"); const delayForTestRunPromiseResolutionAfterTestTimeoutInMs = 100; /** * Runs test function with reject in test run event. * @internal */ const runTestFn = async ({ beforeRetryTimeout, retryIndex, runId, testController, testStaticOptions, }) => { const { status, testFnWithReject } = (0, events_1.getTestRunEvent)(runId); const testTimeout = (0, testTimeout_1.getTestTimeout)(); const { promiseWithTimeout: testRunPromise, resolve: resolveTestRunPromise } = (0, promise_1.getPromiseWithResolveAndReject)(testTimeout + delayForTestRunPromiseResolutionAfterTestTimeoutInMs); (0, testRunPromise_1.setTestRunPromise)(testRunPromise); if (beforeRetryTimeout !== undefined) { const timeoutWithUnits = (0, getDurationWithUnits_1.getDurationWithUnits)(beforeRetryTimeout); (0, log_1.log)(`Waited for ${timeoutWithUnits} before running this retry`, 8 /* LogEventType.InternalUtil */); } const { fullMocks } = (0, config_1.getFullPackConfig)(); if (status !== "skipped" /* TestRunStatus.Skipped */ && fullMocks?.filterTests(testStaticOptions)) { const shouldApplyMocks = retryIndex === 1; await (0, fullMocks_1.enableFullMocks)(fullMocks, shouldApplyMocks, testStaticOptions.filePath); } await testFnWithReject(testController).finally(() => resolveTestRunPromise(undefined)); }; exports.runTestFn = runTestFn;