Adds async function to jasmine suite function that expect promises for asynchronous tests.
To install:
var jasmineAsync = require('jasmine-async-suite');
jasmineAsync.install();
Uninstalling:
afterAll(function() {
var jasmineAsync = require('jasmine-async-suite');
jasmineAsync.uninstall();
});
For example the following async test:
function timeout() {
return new Promise(function(resolve) {
setTimeout(resolve, 1000);
});
}
it('passes when enough time has passed', function(done) {
timeout().then(done);
});
Becomes:
it.async('passes when enough time has passed', function() {
return timeout();
});
It works and looks even better with the proposed ES7 async/await syntax
it.async('passes when enough time has passed', async function() {
await timeout();
});
(c) Copyright 2016 Ryan Dy. All Rights Reserved.