如何使用sinon和nock在nodejs中模拟函数调用,然后模拟API调用

时间:2019-02-20 06:22:20

标签: node.js sinon nock

这是该函数的代码

agent
    .get(backendHost + '/pdfDownload')
    .set('Cache-Control', 'no-cache,no-store,must-revalidate,max-age=-1,private')
    .set('Expires', '-1')
    .query({ q: value })
    .on('error', (error) => {
      console.log(`downloadReport error: ${error}`)
      res.status(500).send('error getting pdf')
    })
    .on('end', () => {
      if (type === reportTypes.INC) {
        const query = {
          reportId: req.param.reportId,
          teacherId: req.user
        }
        markReportAsRead(query, type === reportTypes.INC)
          .catch((error) => {
            console.error(`Error on INC markReportAsRead, crm: ${crmNum} error: ${error}`)
          })
      }
    })
    .pipe(res)
}

我正在尝试测试

  

markReportAsRead

呼叫

后会呼叫

  

.get(backendHost +'/ pdfDownload')

我正在使用nock模拟api调用,并使用sinon对markReportAsRead进行存根。任何帮助将不胜感激。

0 个答案:

没有答案