-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
46 lines (41 loc) · 1.26 KB
/
gulpfile.js
File metadata and controls
46 lines (41 loc) · 1.26 KB
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
45
46
var
gulp = require('gulp'),
purescript = require('gulp-purescript'),
runSq = require('run-sequence'),
karma = require('gulp-karma'),
gulpif = require('gulp-if'),
concat = require('gulp-concat'),
src = ['bower_components/purescript-*/src/**/*.purs',
'bower_components/chai/chai.js',
'src/Control/Reactive/Event.purs',
'tests/Control/Reactive/Event.Spec.purs',
'tests/Main.purs'],
dest = {
path : 'tmp/',
file : 'Test.js'
},
psc = purescript.psc({
main : true,
output : dest.file
}),
karma = karma({
configFile : "./tests/karma.conf.js",
action : "run"
});
gulp.task('build:test', function(){
gulp.src(src)
.pipe(gulpif(/purs/, psc))
.pipe(concat(dest.file))
.pipe(gulp.dest(dest.path));
});
gulp.task('doc', function(){
return gulp.src("src/**/*.purs")
.pipe(purescript.docgen())
.pipe(gulp.dest("README.md"));
});
gulp.task('test:unit',function(){
return setTimeout(function(){
return gulp.src(dest.path+dest.file).pipe(karma);
}, 2000);
});
gulp.task('test', function(){ runSq('build:test', 'test:unit'); });