使用sinun mocks和nodeunit

我正在学习使用sinun与nodeunit ,特别是做嘲弄。 推荐的方法是使用sinon-nodeunit 。 根据文档 ,mock应该可以通过对每个testing函数的test参数的mock方法来获得。

但是,这似乎并不奏效。 如果我在包含以下内容的文件上运行nodeunit

 require('sinon-nodeunit'); exports['test sinon-nodeunit'] = function (test) { mock = test.mock({}); test.done(); }; 

– 我得到这个:

 $ nodeunit test/test-sinon-nodeunit.js test-sinon-nodeunit.js ✖ test sinon-nodeunit TypeError: Object #<Object> has no method 'mock' at /home/malkovich/test/test-sinon-nodeunit.js:4:17 at Object.runTest (/usr/local/lib/node/.npm/nodeunit/0.5.1/package/lib/core.js:54:9) at /usr/local/lib/node/.npm/nodeunit/0.5.1/package/lib/core.js:90:21 at /usr/local/lib/node/.npm/nodeunit/0.5.1/package/deps/async.js:508:13 at /usr/local/lib/node/.npm/nodeunit/0.5.1/package/deps/async.js:118:13 at /usr/local/lib/node/.npm/nodeunit/0.5.1/package/deps/async.js:134:9 at /usr/local/lib/node/.npm/nodeunit/0.5.1/package/deps/async.js:507:9 at Object.concatSeries (/usr/local/lib/node/.npm/nodeunit/0.5.1/package/deps/async.js:147:23) at Object.runSuite (/usr/local/lib/node/.npm/nodeunit/0.5.1/package/lib/core.js:79:11) at Object.runModule (/usr/local/lib/node/.npm/nodeunit/0.5.1/package/lib/core.js:114:13) FAILURES: 1/1 assertions failed (84ms) 

我已经通过npm installsinon (1.1.1)和sinon-nodeunit (0.1.2)的当前版本。

在sinon-nodeunit使用的节点0.5.x和更高版本中删除require.path。 Christian Johansen推动了sinon-nodeunit的变化,它应该与节点0.6.2(和0.5.x系列)兼容,它应该能够解决这个问题…它已经在sinon-nodeunits github页面上提供了,但是仍然没有命中npm。 ..

更新:应该提到sinon-nodeunit已经停止了,因为创build者完全关注BusterJS,这是一个更好的框架。