@luminati-io/webdriverio8
Version:
Next-gen browser and mobile automation test framework for Node.js
65 lines • 2.44 kB
TypeScript
/// <reference types="node" resolution-mode="require"/>
import type { CDPSession } from 'puppeteer-core/lib/esm/puppeteer/common/Connection.js';
import type { Protocol } from 'devtools-protocol';
import Interception from './index.js';
import type { Matches, MockOverwrite, MockResponseParams } from './types.js';
type ClientResponse = {
body: string;
base64Encoded?: boolean;
};
interface HeaderEntry {
name: string;
value: string;
}
type Event = {
requestId: string;
request: Matches & {
mockedResponse: string | Buffer;
};
responseStatusCode?: number;
responseHeaders: HeaderEntry[];
responseErrorReason?: string;
};
export default class DevtoolsInterception extends Interception {
private restored;
static handleRequestInterception(client: CDPSession, mocks: Set<Interception>): (event: Event) => Promise<void | ClientResponse>;
/**
* allows access to all requests made with given pattern
*/
get calls(): Matches[];
/**
* Resets all information stored in the `mock.calls` set.
*/
clear(): void;
/**
* Does everything that `mock.clear()` does, and also
* removes any mocked return values or implementations.
* Restored mock does not emit events and could not mock responses
*/
restore(sessionMocks?: Record<string, Set<Interception>>, cdpSessions?: Record<string, CDPSession>): Promise<void>;
/**
* Always respond with same overwrite
* @param {*} overwrites payload to overwrite the response
* @param {*} params additional respond parameters to overwrite
*/
respond(overwrite: MockOverwrite, params?: MockResponseParams): void;
/**
* Respond request once with given overwrite
* @param {*} overwrites payload to overwrite the response
* @param {*} params additional respond parameters to overwrite
*/
respondOnce(overwrite: MockOverwrite, params?: MockResponseParams): void;
/**
* Abort the request with an error code
* @param {string} errorCode error code of the response
*/
abort(errorReason: Protocol.Network.ErrorReason, sticky?: boolean): void;
/**
* Abort the request once with an error code
* @param {string} errorReason error code of the response
*/
abortOnce(errorReason: Protocol.Network.ErrorReason): void;
private ensureNotRestored;
}
export {};
//# sourceMappingURL=devtools.d.ts.map