2016-05-22 25 views
7

Sto provando a scrivere una semplice operazione di controllo che guarderà i miei file di test e sul cambiamento li compila ed eseguo utilizzando gulp-jasmine.gestione degli errori in gulp 4

Il mio compito orologio:

gulp.task('watch', function() { 
    gulp.watch(['tests/**/[^_]*.ts'], gulp.series(['compile_tests', 'test'])); 
}) 

e il compito di prova:

gulp.task('test', function(){ 
    return gulp.src('tests/**/[^_]*.spec.js') 
     .pipe(
      jasmine().on('error', function(error){ 
       console.log(error); 
       this.emit('end'); 
      }) 
     ); 
}); 

Ma se il codice testato contenere degli errori, come is not a function o qualsiasi altra cosa, guardare crash compito e devo ricominciare di nuovo e ancora. Il mio gestore degli errori non viene nemmeno chiamato. Quindi, come posso gestire gli errori in modo corretto?

risposta

0

Prova questo modo di gestire l'errore

gulp.task('test', function(){ 
     var j = jasmine({}); 
     j.on('error',function(e){ 
      console.log(e); 
      j.end(); 
     }); 
     return gulp.src('tests/**/[^_]*.spec.js') 
      .pipe(j); 
    });