UNPKG

@jest-environment-browserstack/selenium-webdriver

Version:
56 lines (55 loc) 2.33 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const selenium_webdriver_1 = require("selenium-webdriver"); const plugins_1 = require("@jest-environment-browserstack/plugins"); class SeleniumWebDriver extends plugins_1.Driver { constructor(capabilities, selHubUrl) { super(SeleniumWebDriver.pluginName, capabilities); this.selHubUrl = selHubUrl; } build(capabilities) { return __awaiter(this, void 0, void 0, function* () { const driverFactory = new selenium_webdriver_1.Builder().usingServer(this.selHubUrl).withCapabilities(capabilities || this.capabilities); this.driver = yield driverFactory.build(); return this.driver; }); } quit() { return __awaiter(this, void 0, void 0, function* () { try { yield this.driver.quit(); return true; } catch (e) { this.logger(plugins_1.LogTypes.ERROR, e); return false; } }); } } exports.SeleniumWebDriver = SeleniumWebDriver; SeleniumWebDriver.pluginName = 'selenium-webdriver'; class PluginSeleniumWebDriver extends plugins_1.PluginDriver { constructor() { super('selenium-webdriver'); } createWdDriver(capabilities, hubUrl) { return __awaiter(this, void 0, void 0, function* () { this.driver = new SeleniumWebDriver(capabilities, hubUrl); return Promise.resolve(this.driver); }); } getName() { return this.moduleName; } } exports.PluginSeleniumWebDriver = PluginSeleniumWebDriver;