33
44var gulp = require ( "gulp" ) ;
55var plumber = require ( "gulp-plumber" ) ;
6+ var jshint = require ( "gulp-jshint" ) ;
7+ var jscs = require ( "gulp-jscs" ) ;
68var purescript = require ( "gulp-purescript" ) ;
9+ var run = require ( "gulp-run" ) ;
710
811var sources = [
912 "src/**/*.purs" ,
1013 "bower_components/purescript-*/src/**/*.purs"
1114] ;
1215
1316var foreigns = [
17+ "src/**/*.js" ,
1418 "bower_components/purescript-*/src/**/*.js"
1519] ;
1620
17- gulp . task ( "make" , function ( ) {
21+ gulp . task ( "lint" , function ( ) {
22+ return gulp . src ( "src/**/*.js" )
23+ . pipe ( jshint ( ) )
24+ . pipe ( jshint . reporter ( ) )
25+ . pipe ( jscs ( ) ) ;
26+ } ) ;
27+
28+ gulp . task ( "make" , [ "lint" ] , function ( ) {
1829 return gulp . src ( sources )
1930 . pipe ( plumber ( ) )
2031 . pipe ( purescript . pscMake ( { ffi : foreigns } ) ) ;
@@ -39,4 +50,13 @@ gulp.task("dotpsci", function () {
3950 . pipe ( purescript . dotPsci ( ) ) ;
4051} ) ;
4152
53+ gulp . task ( "test" , [ "make" ] , function ( ) {
54+ return gulp . src ( sources . concat ( [ "test/Main.purs" ] ) )
55+ . pipe ( plumber ( ) )
56+ . pipe ( purescript . psc ( { main : "Test.Main"
57+ , ffi : foreigns . concat ( [ "test/Main.js" ] )
58+ } ) )
59+ . pipe ( run ( "node" ) ) ;
60+ } ) ;
61+
4262gulp . task ( "default" , [ "make" , "docs" , "dotpsci" ] ) ;
0 commit comments