UNPKG

@rbnx/webdriverio

Version:

webdriverio plugin for nx

69 lines 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.capabilitiesFilter = void 0; const capabilities = (headless) => new Map([ [ 'chrome', { browserName: 'chrome', acceptInsecureCerts: true, 'goog:chromeOptions': { args: headless ? ['headless', 'disable-gpu'] : [], }, }, ], [ 'firefox', { browserName: 'firefox', 'moz:firefoxOptions': { args: headless ? ['-headless'] : [], }, }, ], [ 'edge', { browserName: 'MicrosoftEdge', 'ms:edgeOptions': { args: headless ? ['--headless'] : [], }, }, ], [ 'android', { browserName: 'chrome', acceptInsecureCerts: true, 'goog:chromeOptions': { mobileEmulation: { deviceName: 'Pixel 5', }, }, }, ], [ 'iphone', { browserName: 'chrome', acceptInsecureCerts: true, 'goog:chromeOptions': { mobileEmulation: { deviceName: 'iPhone 12 Pro', }, }, }, ], ]); const getBrowserCapabilities = ({ browsers, headless, }) => browsers .map((capability) => capabilities(headless).get(capability)) .filter(Boolean); const uniqueCapabilities = (caps) => [...new Set(caps.map((o) => JSON.stringify(o)))].map((s) => JSON.parse(s)); function capabilitiesFilter({ browsers, capabilities = [], headless = false, }) { return uniqueCapabilities([ ...capabilities, ...getBrowserCapabilities({ browsers, headless }), ]); } exports.capabilitiesFilter = capabilitiesFilter; //# sourceMappingURL=capabilities.js.map