我有一个正在存根的函数,该函数会使用多个参数进行调用。我想检查一下只是第一个参数。其余的都是回调函数,所以我不想管它们。因此,我可能有以下 2 个调用,以 ajax 为例:
method.get = sinon.stub();
method.get(25,function(){/* success callback */},function(){/* error callback */});
method.get(10,function(){/* success callback */},function(){/* error callback */});
我无法使用method.get.calls...
因为这样它就无法区分第一个get(25)
和第二个get(10)
。但如果我使用method.get.withArgs(25).calls...
那么它也不匹配,因为withArgs()
火柴all参数,这是 this 没有的(并且永远不可能,使用这样的回调)。
如何让 sinon 存根仅根据第一个参数检查和设置响应?
https://sinonjs.org/releases/latest/matchers/#sinonmatchany https://sinonjs.org/releases/latest/matchers/#sinonmatchany
您可以使用 sinon.match.any:
method.get.withArgs(25, sinon.match.any, sinon.match.any);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)