})
afterEach(function () {
- return closeWindow(w).then(function () {
- w = null
- assert.equal(BrowserWindow.getAllWindows().length, 1)
- })
+ return closeWindow(w).then(function () { w = null })
})
describe('BrowserWindow.close()', function () {
assert(/Blocked a frame with origin/.test(exceptionMessage))
// FIXME this popup window should be closed in sandbox.html
- closeWindow(popupWindow).then(() => {
+ closeWindow(popupWindow, {assertSingleWindow: false}).then(() => {
popupWindow = null
done()
})
-exports.closeWindow = (window) => {
+const assert = require('assert')
+const {BrowserWindow} = require('electron').remote
+
+exports.closeWindow = (window, {assertSingleWindow} = {assertSingleWindow: true}) => {
if (window == null || window.isDestroyed()) {
+ if (assertSingleWindow) {
+ assert.equal(BrowserWindow.getAllWindows().length, 1)
+ }
return Promise.resolve()
} else {
return new Promise((resolve, reject) => {
window.once('closed', () => {
+ if (assertSingleWindow) {
+ assert.equal(BrowserWindow.getAllWindows().length, 1)
+ }
resolve()
})
window.setClosable(true)