@assert-equals/dappdriver
Version:
DappDriver is an e2e testing framework designed for testing decentralized applications (dApps) using MetaMask, Rainbow or Zerion
136 lines (135 loc) • 3.71 kB
TypeScript
import { Browser, BrowserOptions, Driver, Frame, Framework, Page, Wallet } from '../types';
/**
*
*
* @export
* @class DappDriver
*/
export declare class DappDriver {
private static instance;
private domain;
private extension;
private isDisposed;
private driver;
private page;
private frame;
private framework;
private wallet;
/**
* Creates an instance of DappDriver.
* @param {string} domain
* @param {Framework} framework
* @param {Driver} driver
* @memberof DappDriver
*/
constructor(domain: string, framework: Framework, driver: Driver);
static get Instance(): DappDriver | null;
static set Instance(value: DappDriver);
get Framework(): Framework;
get Disposed(): boolean;
set Disposed(value: boolean);
get Driver(): Driver;
get Domain(): string;
get Extension(): string;
set Extension(value: string);
get Page(): Page;
set Page(value: Page);
get Frame(): Frame;
set Frame(value: Frame);
get Wallet(): Wallet;
set Wallet(value: Wallet);
/**
*
* Creates a new DappDriver session based on this current configuration
* @static
* @template TPage
* @param {string} domain
* @param {Framework} framework
* @param {Browser} browser
* @param {new () => TPage} tPage
* @param {BrowserOptions} options
* @return {*} {Promise<TPage>}
* @memberof DappDriver
*/
static create(domain: string, framework: Framework, browser: Browser): Promise<void>;
static create(domain: string, framework: Framework, browser: Browser, options: BrowserOptions): Promise<void>;
static create<TPage>(domain: string, framework: Framework, browser: Browser, tPage: new () => TPage): Promise<TPage>;
static create<TPage>(domain: string, framework: Framework, browser: Browser, tPage: new () => TPage, options: BrowserOptions): Promise<TPage>;
/**
*
*
* @private
* @static
* @param {Framework} framework
* @param {Browser} browser
* @param {BrowserOptions} options
* @return {*} {Promise<Driver>}
* @memberof DappDriver
*/
private static build;
/**
*
*
* @private
* @static
* @param {BrowserOptions} options
* @return {*} {Promise<void>}
* @memberof DappDriver
*/
private static enableAutomation;
/**
*
* Schedules a command to navigate to a new URL
* @private
* @static
* @param {string} url
* @return {*} {Promise<void>}
* @memberof DappDriver
*/
private static open;
/**
*
*
* @private
* @static
* @param {BrowserOptions} options
* @return {*} {Promise<void>}
* @memberof DappDriver
*/
private static setupWallet;
/**
*
*
* @static
* @template TPage
* @param {new () => TPage} page
* @return {*} {Promise<TPage>}
* @memberof DappDriver
*/
static getPage<TPage>(page: new () => TPage): Promise<TPage>;
/**
*
* Schedules a command to quit the current session
* @static
* @return {*} {Promise<void>}
* @memberof DappDriver
*/
static dispose(): Promise<void>;
/**
*
* Schedules a command to make the driver sleep for the given amount of time
* @static
* @param {number} duration
* @return {*} {Promise<void>}
* @memberof DappDriver
*/
static sleep(duration: number): Promise<void>;
/**
*
* Schedule a command to take a screenshot
* @static
* @return {*} {Promise<string>}
* @memberof DappDriver
*/
static takeScreenshot(): Promise<string>;
}