UNPKG

webdriverio

Version:

Next-gen browser and mobile automation test framework for Node.js

66 lines (51 loc) 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _ = _interopRequireDefault(require("./")); var _constants = require("../../constants"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class WebDriverInterception extends _.default { async init() { const { mockId } = await this.browser.mockRequest(this.url, this.filterOptions); this.mockId = mockId; } get calls() { return this.browser.call(() => this.browser.mockCalls(this.mockId)); } clear() { return this.browser.call(() => this.browser.clearMockCalls(this.mockId)); } restore() { return this.browser.call(() => this.browser.clearMockCalls(this.mockId, true)); } respond(overwrite, params = {}) { return this.browser.call(() => this.browser.respondMock(this.mockId, { overwrite, params, sticky: true })); } respondOnce(overwrite, params = {}) { return this.browser.call(() => this.browser.respondMock(this.mockId, { overwrite, params })); } abort(errorReason, sticky = true) { if (typeof errorReason !== 'string' || !_constants.ERROR_REASON.includes(errorReason)) { throw new Error(`Invalid value for errorReason, allowed are: ${_constants.ERROR_REASON.join(', ')}`); } return this.browser.call(() => this.browser.respondMock(this.mockId, { errorReason, sticky })); } abortOnce(errorReason) { return this.abort(errorReason, false); } } exports.default = WebDriverInterception;