@assert-equals/dappdriver
Version:
DappDriver is an e2e testing framework designed for testing decentralized applications (dApps) using MetaMask, Rainbow or Zerion
58 lines (57 loc) • 1.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SignatureRequest = void 0;
const html_element_1 = require("../../controls/html-element");
const page_1 = require("../../page");
/**
*
*
* @export
* @class SignatureRequest
* @extends {PageObject}
* @implements {IConfirmation}
*/
class SignatureRequest extends page_1.PageObject {
get scrollButton() {
return new html_element_1.HTMLElement('xpath=//button[contains(., "Scroll")]');
}
get signButton() {
return new html_element_1.HTMLElement('xpath=//button[contains(., "Sign")]');
}
get cancelButton() {
return new html_element_1.HTMLElement('xpath=//button[contains(., "Cancel")]');
}
/**
* Creates an instance of SignatureRequest.
* @memberof SignatureRequest
*/
constructor() {
super('#/signTypedData', 'Zerion · Sign Typed Data');
}
/**
*
*
* @template TPage
* @param {new () => TPage} page
* @return {*} {Promise<TPage>}
* @memberof SignatureRequest
*/
async accept(page) {
if (await this.scrollButton.isDisplayed()) {
await this.scrollButton.clickAndWait();
}
return await this.signButton.clickAndSwitchToWindow(page);
}
/**
*
*
* @template TPage
* @param {new () => TPage} page
* @return {*} {Promise<TPage>}
* @memberof SignatureRequest
*/
async reject(page) {
return await this.cancelButton.clickAndSwitchToWindow(page);
}
}
exports.SignatureRequest = SignatureRequest;