1 | mocha = require 'gulp-mocha'
|
2 | webpackStream = require 'webpack-stream'
|
3 | runSequence = require 'run-sequence'
|
4 | karma = require 'gulp-karma'
|
5 |
|
6 | require 'coffee-loader'
|
7 |
|
8 | module.exports = (gulp) ->
|
9 |
|
10 | gulp.task 'specs', (next) ->
|
11 | runSequence 'specs:server', 'specs:client', next
|
12 |
|
13 |
|
14 | gulp.task 'specs:client', (next) ->
|
15 | runSequence 'specs:client:build', 'specs:client:run', next
|
16 |
|
17 |
|
18 | gulp.task 'specs:server', ->
|
19 | gulp.src [
|
20 | 'src/spec_setup.coffee'
|
21 | 'src/**/*.coffee'
|
22 | ]
|
23 | .pipe mocha()
|
24 |
|
25 |
|
26 | gulp.task 'specs:client:build', ->
|
27 | webpackConfig = require('./webpack_config').getDefaultConfiguration()
|
28 | webpackConfig.output =
|
29 | filename: 'specs.js'
|
30 |
|
31 | gulp.src [
|
32 | 'src/spec_setup.coffee'
|
33 | 'src/**/*.coffee'
|
34 | ]
|
35 | .pipe webpackStream webpackConfig
|
36 | .pipe gulp.dest 'dist/specs'
|
37 |
|
38 |
|
39 | gulp.task 'specs:client:run', ->
|
40 | gulp.src 'dist/specs/specs.js'
|
41 | .pipe karma
|
42 | configFile: 'karma.conf.coffee'
|
43 | action: 'start'
|