Merge pull request #10602 from electron/fix-singleton-test

Fix the flaky test of app.makeSingleInstance
This commit is contained in:
Cheng Zhao 2017-09-25 11:44:00 +09:00 committed by GitHub
commit 42a2126273
2 changed files with 9 additions and 12 deletions

View file

@ -162,19 +162,18 @@ describe('app module', function () {
this.timeout(120000)
const appPath = path.join(__dirname, 'fixtures', 'api', 'singleton')
// First launch should exit with 0.
let secondLaunched = false
const first = ChildProcess.spawn(remote.process.execPath, [appPath])
first.once('exit', (code) => {
assert.ok(secondLaunched)
assert.equal(code, 0)
done()
})
// Second launch should exit with 1.
const second = ChildProcess.spawn(remote.process.execPath, [appPath])
second.once('exit', (code) => {
assert.ok(!secondLaunched)
assert.equal(code, 1)
secondLaunched = true
// Start second app when received output.
first.stdout.once('data', () => {
// Second launch should exit with 1.
const second = ChildProcess.spawn(remote.process.execPath, [appPath])
second.once('exit', (code) => {
assert.equal(code, 1)
done()
})
})
})
})

View file

@ -1,8 +1,6 @@
const {app} = require('electron')
process.on('uncaughtException', () => {
app.exit(2)
})
console.log('started') // ping parent
const shouldExit = app.makeSingleInstance(() => {
process.nextTick(() => app.exit(0))