flagpole
Version:
Simple and fast DOM integration, headless or headful browser, and REST API testing framework.
42 lines (41 loc) • 1.29 kB
TypeScript
import * as puppeteer from "puppeteer-core";
import { Page, Browser, Response } from "puppeteer-core";
import { HttpRequest } from "../http/http-request";
import { KeyValue } from "../interfaces/generic-types";
import { BrowserOptions } from "./browser-opts";
export declare type BrowserConsoleMessage = {
type: string;
text: string;
source: puppeteer.ConsoleMessage;
};
export interface iBrowserControlResponse {
response: Response;
body: string;
cookies: KeyValue;
}
export declare class BrowserControl {
private _request;
private _browser;
private _page;
private _response;
private _consoleMessages;
private _puppeteer;
get consoleMessages(): BrowserConsoleMessage[];
get response(): Response | null;
get page(): Page | null;
get browser(): Browser | null;
get puppeteer(): typeof puppeteer | null;
get request(): HttpRequest;
get browserOpts(): BrowserOptions;
private get _dynamicPuppeteer();
private _getCookies;
close(): Promise<void>;
has404(): boolean;
open(request: HttpRequest): Promise<iBrowserControlResponse>;
private _onBrowserReady;
private _recordConsoleOutput;
private _setBasicAuth;
private _applyCookies;
private _openUri;
private _find404Errors;
}