-
Notifications
You must be signed in to change notification settings - Fork 6
/
Cakefile
39 lines (33 loc) · 1.65 KB
/
Cakefile
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
fs = require 'fs'
child = require 'child_process'
task 'test', 'run tests (requires development install)', (options) ->
process.env['NODE_PATH'] = './lib/:$NODE_PATH'
test = child.spawn 'mocha', ['--compilers', 'coffee:coffee-script/register', '-u', 'tdd', 'test']
test.stdout.pipe process.stdout
test.stderr.pipe process.stderr
test.on 'exit', (num) ->
return process.exit num
spawnMochaCov = (reporter) ->
return child.spawn 'mocha', ['--compilers', 'coffee:coffee-script/register', '-r', 'blanket', '-R', reporter, '-u', 'tdd', 'test']
task 'coverage', 'run tests with coverage check (requires development install)', (options) ->
process.env['NODE_PATH'] = './lib/:$NODE_PATH'
test = spawnMochaCov 'html-cov'
file = fs.createWriteStream 'coverage.html'
test.stdout.pipe file
test.stderr.pipe process.stderr
test.on 'exit', (num) ->
child.exec 'open ./coverage.html'
task 'coveralls', 'report coveralls to travis', (options) ->
process.env['NODE_PATH'] = './lib/:$NODE_PATH'
test = spawnMochaCov 'mocha-lcov-reporter'
report = child.spawn './node_modules/coveralls/bin/coveralls.js'
test.stdout.pipe report.stdin
test.stderr.pipe process.stderr
task 'doc', 'create md and html doc files', (options) ->
child.exec 'coffee -b -c examples/*', ->
child.exec 'docket lib/* examples/* -m', ->
child.exec 'docket lib/* examples/* -d doc_html'
task 'browserify', 'build for a browser', (options)->
fs.mkdir './build', ->
child.exec './node_modules/browserify/bin/cmd.js ./lib/index.js --standalone osc -o ./build/osc-min.js', ->
child.exec './node_modules/uglify-js/bin/uglifyjs -o ./build/osc-min.min.js ./build/osc-min.js'