CoffeeScript + Mocha + Blanket,怎么样?

时间:2013-11-13 16:11:08

标签: javascript coffeescript code-coverage mocha

我只是用mocha,coffeescript和毯子设置我的项目。摩卡和毯子似乎与编译好的Javascript配合得很好,但不是最初的coffeescript。

这是我要测试的代码:

class App
    @add: (a, b) ->
        a + b

    @pow: (exp, base) ->
        if exp == 0
            return 1
        product = 1
        for i in [1..exp]
            product *= base
        product

module.exports = App

这是我的测试代码:

App = require '../src/app'
assert = require 'assert'

describe 'App', () ->
    describe 'add', () ->
        it 'should return sum of two numbers', () ->
            assert.equal( App.add( 2, 3 ), 5 )

    describe 'pow', () ->
        it 'should return the correct result', () ->
            assert.equal( App.pow( 2, 3 ), 9 )

对于CoffeeScript

我按照以下方式运行了mocha:

mocha --compilers coffee:coffee-script --require blanket --reporter html-cov > coverage.html

结果显示0% coverage 0 LOC而没有别的。

对于Javascript

但是,如果我将这两个coffeescript文件编译成javascript,并运行以下命令:

mocha --require blanket --reporter html-cov > coverage.html

报告很好地显示。

那么,我做错了吗?因为我阅读了Blanket功能,发现Blanket应该与CoffeeScript配合得很好。如何实现这一目标?

1 个答案:

答案 0 :(得分:2)

从这个post开始,您需要package.json

"blanket": {
    "loader": "./node-loaders/coffee-script"
}