Skip to content
Snippets Groups Projects
Commit 88114650 authored by Hakim El Hattab's avatar Hakim El Hattab
Browse files

qunit task rejects on failure

parent ca29e3dd
No related branches found
No related tags found
No related merge requests found
......@@ -65,7 +65,10 @@ gulp.task('test-qunit', function() {
let testFiles = glob.sync('test/*.html' )
return Promise.all( testFiles.map( filename => {
let totalTests = 0;
let failingTests = 0;
let tests = Promise.all( testFiles.map( filename => {
return new Promise( ( resolve, reject ) => {
runQunitPuppeteer({
targetUrl: `file://${path.join(__dirname, filename)}`,
......@@ -74,20 +77,43 @@ gulp.task('test-qunit', function() {
puppeteerArgs: ['--allow-file-access-from-files']
})
.then(result => {
console.log(`\n\n${('Testing '+filename+'...').bold.blue}`);
printResultSummary(result, console);
if( result.stats.failed > 0 ) {
console.log(`${'!'} ${filename} [${result.stats.passed}/${result.stats.total}] in ${result.stats.runtime}ms`.red);
// printResultSummary(result, console);
printFailedTests(result, console);
}
else {
console.log(`${''} ${filename} [${result.stats.passed}/${result.stats.total}] in ${result.stats.runtime}ms`.green);
}
totalTests += result.stats.total;
failingTests += result.stats.failed;
resolve();
})
.catch(ex => {
console.error(ex);
.catch(error => {
console.error(error);
reject();
});
} )
} ) )
} ) );
return new Promise( ( resolve, reject ) => {
tests.then( () => {
if( failingTests > 0 ) {
reject( new Error(`${failingTests}/${totalTests} tests failed`.red) );
}
else {
console.log(`${''} Passed ${totalTests} tests`.green.bold);
resolve();
}
} )
.catch( () => {
reject();
} );
} );
} )
gulp.task('test', gulp.series(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment