заглушка не возвращает данные разрешения в proxyquire, получая неопределенный - PullRequest
0 голосов
/ 21 октября 2018

Я не могу получить разрешенное значение в ответе, который возвращает заглушка обещания 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 Мне нужно получитьразрешенное значение из обещания. 100% *, которое я использую, если я не использую заглушку, работает должным образом.если я поставлю sendOtp: otpHelper.sendOtp, он работает как положено, но когда я сделаю его как заглушку, он не возвращает разрешенное значение.

1 Ответ

0 голосов
/ 21 октября 2018

Заглушка не вызывает оригинальный метод, вот как это должно работать.Вам нужен шпион, который упаковывает оригинальный метод и вызывает его при вызове.

sinon.spy(otpHelper, 'sendOtp')
...