Sinon stub.returns() 没有返回正确的值
Sinon stub.returns() not returning correct value
Sinon stub.returns() 方法没有 return 根据文档的正确响应。任何想法为什么?
stubThis = sinon.stub().returns('123');
console.log(stubThis); // returns stub, but expect it to return 123
您需要调用stubThis
:console.log(stubThis());
当您调用 sinon.stub()
时,您会得到一个 returns undefined
:
的函数
var stub = sinon.stub();
stub() // return undefined
当您对该函数调用 .returns
方法时,您指定它的 return 值并取回原始函数:
stub.returns('123') === stub; // true
stub() // now returns '123'
所以在你上面的代码中 stubThis
不应该是 '123'
。它是一个 return 值为 '123'
的函数。您只需要调用 stubThis
:
console.log(stubThis()); // logs '123'
Sinon stub.returns() 方法没有 return 根据文档的正确响应。任何想法为什么?
stubThis = sinon.stub().returns('123');
console.log(stubThis); // returns stub, but expect it to return 123
您需要调用stubThis
:console.log(stubThis());
当您调用 sinon.stub()
时,您会得到一个 returns undefined
:
var stub = sinon.stub();
stub() // return undefined
当您对该函数调用 .returns
方法时,您指定它的 return 值并取回原始函数:
stub.returns('123') === stub; // true
stub() // now returns '123'
所以在你上面的代码中 stubThis
不应该是 '123'
。它是一个 return 值为 '123'
的函数。您只需要调用 stubThis
:
console.log(stubThis()); // logs '123'