Skip to content

Commit 37b1aaf

Browse files
committed
Fix stale tests
1 parent b298634 commit 37b1aaf

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

tests/test.js

+7-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import util from 'util'
22

3+
let done = 0
34
let only = false
45
let ignored = 0
56
let promise = Promise.resolve()
@@ -17,7 +18,10 @@ async function test(o, name, fn, after) {
1718
return
1819

1920
tests[line] = { fn, line, name }
20-
promise = promise.then(() => fn())
21+
promise = promise.then(() => Promise.race([
22+
new Promise((resolve, reject) => fn.timer = setTimeout(() => reject('Timed out'), 1000)),
23+
fn()
24+
]))
2125
.then(([expected, got]) => {
2226
if (expected !== got)
2327
throw new Error(util.inspect(got) + ' != ' + expected)
@@ -33,13 +37,15 @@ async function test(o, name, fn, after) {
3337
tests[line].succeeded = false
3438
tests[line].cleanup = err
3539
})
40+
.then(() => ++done === Object.keys(tests).length && exit())
3641
}
3742

3843
process.on('exit', exit)
3944

4045
process.on('SIGINT', exit)
4146

4247
function exit() {
48+
process.removeAllListeners('exit')
4349
console.log('')
4450
let success = true
4551
Object.values(tests).forEach((x) => {

0 commit comments

Comments
 (0)