1
0
Fork 0

Added karma coverage to the build loop

This commit is contained in:
Michaël Lemaire 2015-01-07 01:00:00 +01:00 committed by Michaël Lemaire
parent 39fda0ffce
commit 6b5e058382
2 changed files with 76 additions and 66 deletions

View file

@ -42,6 +42,7 @@ packages =
gulp-concat-sourcemap
gulp-connect
gulp-gh-pages
gulp-karma
gulp-less
gulp-minify-css
gulp-minify-html

View file

@ -6,6 +6,7 @@ var gulp = require('gulp'),
sourcemaps = require('gulp-sourcemaps'),
processhtml = require('gulp-processhtml'),
connect = require('gulp-connect'),
karma = require('gulp-karma'),
open = require('gulp-open'),
del = require('del'),
uglify = require('gulp-uglifyjs'),
@ -17,6 +18,9 @@ var paths = {
less: 'src/css/main.less',
index: 'src/index.html',
libs: [
'src/vendor/jasmine/lib/jasmine-core/jasmine.js',
'src/vendor/jasmine/lib/jasmine-core/jasmine-html.js',
'src/vendor/jasmine/lib/jasmine-core/boot.js',
'src/vendor/phaser-official/build/phaser.min.js'
],
ts: 'src/scripts/**/*.ts',
@ -58,6 +62,11 @@ gulp.task('less', function () {
.pipe(gulp.dest(paths.build));
});
gulp.task('tests', ['typescript'], function () {
return gulp.src(paths.libs + [paths.build + 'main.js'])
.pipe(karma({configFile: 'karma.conf.js', action: 'run'}))
});
gulp.task('processhtml', function () {
return gulp.src(paths.index)
.pipe(processhtml())
@ -70,7 +79,7 @@ gulp.task('reload', ['typescript'], function () {
});
gulp.task('watch', function () {
gulp.watch(paths.ts, ['typescript', 'reload']);
gulp.watch(paths.ts, ['typescript', 'tests', 'reload']);
gulp.watch(paths.less, ['less', 'reload']);
gulp.watch(paths.index, ['reload']);
});
@ -105,9 +114,9 @@ gulp.task('deploy', function () {
.pipe(deploy());
});
gulp.task('default', function() {
runSequence('clean', ['typescript', 'less', 'connect', 'watch'], 'open');
gulp.task('default', function () {
runSequence('clean', ['typescript', 'less', 'connect', 'watch'], ['tests', 'open']);
});
gulp.task('build', function() {
gulp.task('build', function () {
return runSequence('clean', ['typescript', 'less', 'copy', 'minifyJs', 'minifyCss', 'processhtml']);
});