I\'m using Q for promises, but when setting up some tests I discover I see way in catching async errors thrown inside a function that returns a promise.
I tried to
The exception in the setTimeout
is not related anyhow to the promises, you have to catch that yourself using a try
-catch
-block.
Or you use Q.delay:
function func(){
return Q.delay(100).then(function(){
throw new Error("async error");
});
}
func()
.then(console.log.bind(console, "success"))
.fail(console.log.bind(console));