Skip to content

Commit 61a1fbf

Browse files
author
Krum Motsov
committed
Add gulp-instanbul and jasmine-reporters deps and configure test task to save test and coverage reports
1 parent f63c6d3 commit 61a1fbf

File tree

2 files changed

+23
-2
lines changed

2 files changed

+23
-2
lines changed

gulpfile.js

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ var gulp = require('gulp');
33
var shell = require('gulp-shell');
44
var jshint = require('gulp-jshint');
55
var jasmine = require('gulp-jasmine');
6+
var istanbul = require('gulp-istanbul');
7+
var reporters = require('jasmine-reporters');
68
var stylish = require('jshint-stylish');
79
var jscs = require('gulp-jscs');
810
var isWin = /^win/.test(process.platform);
@@ -20,9 +22,26 @@ gulp.task('lint', function () {
2022
.pipe(jshint.reporter('fail'));
2123
});
2224

23-
gulp.task('test', function () {
25+
gulp.task('pre-test', function () {
26+
return gulp.src(['./src/**/*.js'])
27+
// Covering files
28+
.pipe(istanbul())
29+
// Force `require` to return covered files
30+
.pipe(istanbul.hookRequire());
31+
});
32+
33+
gulp.task('test', ['pre-test'], function () {
2434
return gulp.src('test/**/*.spec.js')
25-
.pipe(jasmine());
35+
.pipe(jasmine({
36+
reporter: new reporters.JUnitXmlReporter({
37+
savePath: 'test/reports'
38+
})
39+
}))
40+
// Creating the reports after tests ran
41+
.pipe(istanbul.writeReports({
42+
dir: './test/reports/coverage',
43+
reporters: ['clover', 'cobertura']
44+
}));
2645
});
2746

2847
gulp.task('jscs', function () {

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@
88
},
99
"devDependencies": {
1010
"gulp": "^3.8.10",
11+
"gulp-istanbul": "^0.10.4",
1112
"gulp-jasmine": "^2.0.1",
1213
"gulp-jscs": "^1.4.0",
1314
"gulp-jshint": "^1.9.0",
1415
"gulp-shell": "^0.2.11",
16+
"jasmine-reporters": "^2.0.0",
1517
"jsdoc": "3.3.0-alpha13",
1618
"jshint-stylish": "^1.0.0"
1719
},

0 commit comments

Comments
 (0)