本文介绍了使用Sinon取消链接的Mongoose呼叫的存根的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我了解了如何对猫鼬模型进行存根(感谢使用Sinon对猫鼬模型进行存根),但我不太了解如何对以下电话进行存根:
I get how to stub Mongoose models (thanks to Stubbing a Mongoose model with Sinon), but I don't quite understand how to stub calls like:
myModel.findOne({"id": someId})
.where("someBooleanProperty").equals(true)
...
.exec(someCallback);
我尝试了以下操作:
var findOneStub = sinon.stub(mongoose.Model, "findOne");
sinon.stub(findOneStub, "exec").yields(someFakeParameter);
无济于事,有什么建议吗?
to no avail, any suggestions?
推荐答案
我已通过以下操作解决了该问题:
I've solved it by doing the following:
var mockFindOne = {
where: function () {
return this;
},
equals: function () {
return this;
},
exec: function (callback) {
callback(null, "some fake expected return value");
}
};
sinon.stub(mongoose.Model, "findOne").returns(mockFindOne);
这篇关于使用Sinon取消链接的Mongoose呼叫的存根的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!