与Coffeescript一起使用should.js

我想在我在Coffeescript中编写的Node.js项目中使用should.js和mocha。

在纯Javascript中,should.js中的expression式就像

(function(){ throw new Error('fail'); }).should.throw(); 

现在我想在Coffeescript中编写相同的expression式。 就像是

 object.function().should.throw 

但是,编译

 object["function"]().should["throw"]; 

我的Coffescript代码中的错误在哪里?

我使用的代码是testModel = new DBModel() testModel.get().should.throw()

就我从pure-JS-example中可以看到的,你不应该调用你想testing的函数 – 它的结果可能不会有should方法。 用这个代替:

 testModel = new DBModel(); testModel.get.should.throw(); 

我不知道你为什么在你的coffeescript中写入object.function()。 我认为编译给你的JS的coffeescript应该是:

 (-> throw new Error('fail') ).should.throw()