gpt4 book ai didi

node.js - 使用Sinon 来 stub Mongoose 模型

转载 作者:太空宇宙 更新时间:2023-11-03 23:06:47 26 4
gpt4 key购买 nike

我正在尝试 stub Mongoose 模型以返回 json 值

我的代码是

var valueToReturn = {
name:'xxxxx'
};

var stub = sinon.stub(MyModel.prototype,'findOne');

stub.returns(valueToReturn);

我收到此错误:TypeError:尝试将未定义的属性 findOne 包装为函数

最佳答案

查看 sinon-mongoose 。您可以期望只需几行即可实现链式方法:

// If you are using callbacks, use yields so your callback will be called
sinon.mock(YourModel)
.expects('findById').withArgs('abc123')
.chain('exec')
.yields(someError, someResult);

// If you are using Promises, use 'resolves' (using sinon-as-promised npm)
sinon.mock(YourModel)
.expects('findById').withArgs('abc123')
.chain('exec')
.resolves(someResult);

您可以在存储库中找到工作示例。

另外,建议:使用 mock 方法而不是 stub,这将检查原始对象上是否确实存在该方法。

关于node.js - 使用Sinon 来 stub Mongoose 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32583704/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com