如何测试在 sinon.js 的间谍函数中是否将匿名函数作为参数传递?想象一下这样的功能。
function myFunction(){
//do stuff
otherobj.anotherFunc({myobj: 'value'}, function(){ console.log('test'); });
}
我在我的测试设置中为 otherobj.anotherFunc 创建了一个间谍,并且可以轻松测试是否使用第一个参数(一个 js 对象)调用了我的间谍。
但是当我尝试测试第二个参数是否回调等于另一个函数时,我遇到了一些问题。
ok(myDependencySpy.called, "dependency was called!"); //this is OK!
deepEqual(myDependencySpy.args[0][0], {myobj: 'value'}); //this is OK!
deepEqual(myDependencySpy.args[0][1], function(){ console.log('test'); }); //this FAIL =[
有没有办法测试它?