我正在尝试在Windows下的节点上运行mocha。我也决定了为什么不把一些CoffeeScript放进去玩。
describe 'Array', ->
describe '#indexOf()', ->
it 'should return -1 when not present' ->
[1,2,3].indexOf(4).should.equal -1
问题是我遇到了错误:
C:\Users\ShaneC\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\coffee-script.js:51
throw err;
^
Error: In C:\projects\BowlingKata\test\test.coffee, Parse error on line 3: Unexpected '->'
at Object.parseError (C:\Users\ShaneC\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\parser.js:477:11)
at Object.parse (C:\Users\ShaneC\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\parser.js:554:22)
at C:\Users\ShaneC\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\coffee-script.js:43:20
at Object..coffee (C:\Users\ShaneC\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\coffee-script.js:19:17)
at Module.load (module.js:353:31)
这是我的mocha.opts文件:
--reporter spec
--ui bdd
-r should
--compilers coffee:coffee-script
关于我可能做错的任何想法?我复制了http://net.tutsplus.com/tutorials/javascript-ajax/better-coffeescript-testing-with-mocha/的代码,没有人报告任何问题..
答案 0 :(得分:2)
假设您正在调用函数it
,参数“应该在不存在时返回-1”,然后是一个检查此函数的函数,您需要将参数分开逗号:
describe 'Array', ->
describe '#indexOf()', ->
it 'should return -1 when not present', ->
[1,2,3].indexOf(4).should.equal -1
这编译为:
describe('Array', function() {
return describe('#indexOf()', function() {
return it('should return -1 when not present', function() {
return [1, 2, 3].indexOf(4).should.equal(-1);
});
});
});