--- /dev/null
+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