2018-10-12 15:32:17 +02:00
|
|
|
'use strict'
|
|
|
|
|
2019-09-10 19:11:55 +02:00
|
|
|
let globalTeardown = () => {}
|
2019-04-01 16:09:09 +02:00
|
|
|
const browser = global.bsBrowser
|
2018-10-07 15:04:43 +02:00
|
|
|
|
2019-03-29 16:05:53 +01:00
|
|
|
if (process.env.BROWSERSTACK) {
|
|
|
|
globalTeardown = () => global.browserStackLocal.killAllProcesses(() => {})
|
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = async () => {
|
|
|
|
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()
|
2019-04-30 22:22:38 +02:00
|
|
|
await browser.quit()
|
|
|
|
await globalTeardown()
|
2019-03-29 16:05:53 +01:00
|
|
|
}
|
|
|
|
} catch (_) {}
|
2019-04-30 22:22:38 +02:00
|
|
|
} else {
|
|
|
|
await globalTeardown()
|
2019-03-29 16:05:53 +01:00
|
|
|
}
|
2018-10-07 15:04:43 +02:00
|
|
|
}
|