Since node 6.9, if a promise is rejected and no error handler is attached to the promise within a turn of the event loop, or if an error handler was attached to it later than one turn of the Node.js event loop, then warnings are logged (and in future versions of node it will terminate the node process).
Since rejectWith creates the promise when it is called, and not when the mock is called, this means that the following code will generate warnings:
Fixes #22
Since node 6.9, if a promise is rejected and no error handler is attached to the promise within a turn of the event loop, or if an error handler was attached to it later than one turn of the Node.js event loop, then warnings are logged (and in future versions of node it will terminate the node process).
Since
rejectWith
creates the promise when it is called, and not when the mock is called, this means that the following code will generate warnings:This PR demonstrates this by first adding a test, and then fixes it by create the rejected promise when the mock is called.