我无法在承诺存根返回undefined的响应中获得解析的值

   otpHelper.sendOtp = (number) => {
       console.log('number', number);
  return Promise.resolve({ status: '0', requestId: 'hdgfhsgdfdsgfjsgdfj' });
};

sendOtpStub = sinon.stub(otpHelper, 'sendOtp');
const otpHelperStub = proxyquire('../routes/register', {
  '../utils/otpHelper': {
    sendOtp: sendOtpStub,
    // checkOtp: checkOtpStub,
  },
});


sendOtpStub被调用,但我得到的值是undefined我需要从promise.its解析为undefined的值中获取已解析的值。
如果未按照预期使用存根,则表示正在使用。
如果我放sendOtp: otpHelper.sendOtp其按预期工作,但当我将其作为存根时,它不返回已解析的值。

最佳答案

存根不调用原始方法,这就是它应该起作用的方式。您想要的是一个间谍,它将原始方法包装起来并在调用时调用它。

sinon.spy(otpHelper, 'sendOtp')

关于javascript - stub 未在proxyquire中返回未定义的解析数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52917300/

10-10 22:19