无法使用CoffeeScript运行摩卡

Makefile – 内容:

REPORTER = dot all: build build: @./node_modules/coffee-script/bin/coffee \ -c \ -o lib src clean: rm -rf lib mkdir lib watch: @./node_modules/coffee-script/bin/coffee \ -o lib \ -cw src test: @./node_modules/mocha/bin/mocha \ --reporter $(REPORTER) \ test/*.coffee .PHONY: build clean watch test 

项目根目录有一个包含两个文件的testing文件夹:mocha.opts和example.coffee

example.coffee – 内容

 describe "feature", -> it "should add two numbers", -> (2+2).should.equal 4 

在运行make test ,得到以下错误:

 cribe 'feature', ^^^^^^^^^ node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ SyntaxError: Unexpected string at Module._compile (module.js:429:25) at Object..js (module.js:459:10) at Module.load (module.js:348:31) at Function._load (module.js:308:12) at Module.require (module.js:354:17) at require (module.js:370:17) at /home/my_username/testcode/coffeepress/node_modules/mocha/bin/_mocha:261:27 at Array.forEach (native) at load (/home/my_username/testcode/coffeepress/node_modules/mocha/bin/_mocha:258:9) at Object.<anonymous> (/home/my_username/testcode/coffeepress/node_modules/mocha/bin/_mocha:249:1) at Module._compile (module.js:441:26) at Object..js (module.js:459:10) at Module.load (module.js:348:31) at Function._load (module.js:308:12) at Array.0 (module.js:479:10) at EventEmitter._tickCallback (node.js:192:40) 

用js文件运行Mocha成功,但无法使用CoffeeScript运行。 我真的很想 – 为了代码简洁。

请指导。

从摩卡1.0开始:

咖啡脚本不再支持开箱即用。 可以通过映射文件扩展名(用于–watch)和模块名称来使用CS和类似的转换器。 例如 – --compilers coffee:coffee-script使用CoffeeScript --compilers coffee:coffee-script/register使用CoffeeScript 1.7+的--compilers coffee:coffee-script/register

(引用http://visionmedia.github.io/mocha/#compilers-option )所以,你需要添加行

 --compilers coffee:coffee-script/register 

或者,对于CS <= 1.6.x,

 --compilers coffee:coffee-script 

到你的mocha.opts文件。

从CoffeeScript 1.7开始,选项应该是:

 --compilers coffee:coffee-script/register 

摩卡的github网站上提出了一个问题 。

我需要对我的摩卡指数进行两处更改才能使其工作:

 --require coffee-script/register --compilers coffee:coffee-script/register 
Interesting Posts