22 lines
660 B
CoffeeScript
22 lines
660 B
CoffeeScript
|
assert = require 'assert'
|
||
|
fs = require 'fs'
|
||
|
|
||
|
describe 'contexts', ->
|
||
|
describe 'setTimeout in fs callback', ->
|
||
|
it 'does not crash', (done) ->
|
||
|
fs.readFile __filename, ->
|
||
|
setTimeout done, 0
|
||
|
|
||
|
describe 'throw error in node context', ->
|
||
|
it 'get caught', (done) ->
|
||
|
error = new Error('boo!')
|
||
|
lsts = process.listeners 'uncaughtException'
|
||
|
process.removeAllListeners 'uncaughtException'
|
||
|
process.on 'uncaughtException', (err) ->
|
||
|
process.removeAllListeners 'uncaughtException'
|
||
|
for lst in lsts
|
||
|
process.on 'uncaughtException', lst
|
||
|
done()
|
||
|
fs.readFile __filename, ->
|
||
|
throw error
|