rsnext/test/jest-global-teardown.js
JJ Kasper 533018f7d0 Update tests for BrowserStack (#6810)
Update tests to setup webdriver stuff in `jest-environment` and re-use one browser session instead of spawning one for each webdriver call to prevent creating too many BrowserStack sessions.
2019-03-29 16:05:53 +01:00

27 lines
629 B
JavaScript

'use strict'
let globalTeardown
const browser = global.browser
if (process.env.BROWSERSTACK) {
globalTeardown = () => global.browserStackLocal.killAllProcesses(() => {})
} else {
const chromedriver = require('chromedriver')
globalTeardown = () => chromedriver.stop()
}
module.exports = async () => {
await globalTeardown()
if (browser) {
// Close all remaining browser windows
try {
const windows = await browser.windowHandles()
for (const window of windows) {
if (!window) continue
await browser.window(window)
await browser.origClose()
}
} catch (_) {}
}
}