-
Notifications
You must be signed in to change notification settings - Fork 4
/
gulpfile.js
44 lines (39 loc) · 1.03 KB
/
gulpfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
var gulp = require('gulp');
var sequence = require('gulp-sequence');
var mocha = require('gulp-mocha');
var istanbul = require('gulp-istanbul');
var eslint = require('gulp-eslint');
var reporter = require('./');
gulp.task('lint', function lint() {
return gulp
.src(['index.js', 'gulpfile.js', 'test/**/*.test.js'])
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError())
;
});
gulp.task('test.instrument', function() {
return gulp
.src(['index.js'])
.pipe(istanbul())
.pipe(istanbul.hookRequire())
;
});
gulp.task('test', ['test.instrument'], function() {
return gulp
.src(['test/**/*.test.js'])
.pipe(mocha())
.pipe(istanbul.writeReports({
dir: './dist/report'
}))
;
});
gulp.task('codeclimate', function sendToCodeclimate() {
return gulp
.src(['dist/report/lcov.info'], { read: false })
.pipe(reporter({
token: '83d1a6741b82ae334cbc797b967958cff1462691fcdb082b222087a63a6d2a5d'
}))
;
});
gulp.task('default', sequence(['lint', 'test'], 'codeclimate'));