【问题标题】:Stub standalone function from JSON module in SinonSinon中JSON模块的存根独立函数
【发布时间】:2021-11-27 06:51:14
【问题描述】:

code.js


const fun = () => {
  console.log('Some message');
}

module.exports = {fun}

文件.js


const {fun} = require('./code');

const abc = () => { 
  return fun();
}

module.exports = {abc}

file.test.js

const code = require('./code');
const abc = require('./abc');
const sinon = require('sinon');

it('Should return Some Message', () => {
  sinon.stub(code,'fun').returns(true);
  abc.abc();
});

在这里,我想对函数 fun 进行存根,但由于我以不同于对象的方式导入它,因此存根不起作用。

我不想将我的导入样式更改为对象,而不是导入选择性键。

有没有办法在Sinon中做stubbing?

【问题讨论】:

    标签: node.js unit-testing sinon


    【解决方案1】:

    你应该在require('./abc')之前调用sinon.stub()

    const sinon = require('sinon');
    const code = require('./code');
    sinon.stub(code,'fun').returns(true);
    const abc = require('./abc');
    
    it('Should return Some Message', () => {
        abc.abc();
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-24
      • 2021-09-13
      • 2021-09-24
      • 1970-01-01
      • 2016-05-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多