qunit task rejects on failure
							parent
							
								
									ca29e3dd29
								
							
						
					
					
						commit
						881146500c
					
				
							
								
								
									
										38
									
								
								gulpfile.js
								
								
								
								
							
							
						
						
									
										38
									
								
								gulpfile.js
								
								
								
								
							|  | @ -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( | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Hakim El Hattab
						Hakim El Hattab