| 258 | } |
| 259 | |
| 260 | _validateConfig(config) { |
| 261 | const defaults = { |
| 262 | browser: 'chrome', |
| 263 | waitForAction: 100, |
| 264 | waitForTimeout: 1000, |
| 265 | pressKeyDelay: 10, |
| 266 | fullPageScreenshots: false, |
| 267 | disableScreenshots: false, |
| 268 | uniqueScreenshotNames: false, |
| 269 | manualStart: false, |
| 270 | getPageTimeout: 30000, |
| 271 | waitForNavigation: 'load', |
| 272 | restart: true, |
| 273 | keepCookies: false, |
| 274 | keepBrowserState: false, |
| 275 | show: false, |
| 276 | defaultPopupAction: 'accept', |
| 277 | highlightElement: false, |
| 278 | strict: false, |
| 279 | } |
| 280 | |
| 281 | return Object.assign(defaults, config) |
| 282 | } |
| 283 | |
| 284 | _getOptions(config) { |
| 285 | return config.browser === 'firefox' ? Object.assign(this.options.firefox, { product: 'firefox' }) : this.options.chrome |