NodeJ-用存根模拟外部呼叫

时间:2018-11-23 15:20:06

标签: node.js sinon stub

我目前正在测试一个控制器(在我的代码中称其为sut),该控制器在方法中调用另一个控制器(以下称其为OtherController)。

我进行了如下测试

it('My Test', () => {
  const stub = sinon.stub(OtherController, 'externalMethod').returns([OK, data]);
  sut.method();
  expect(stub.called).to.be.true;
})

但是此代码不起作用,出现错误

  

[TypeError:_get __(...)。externalMethod不是函数]

当我不关心该重新使用什么方法时,它会起作用

const stub = sinon.stub().returns();
sut.__Rewire__('OtherController', stub);

但是当我想从OtherController.externalMethod中获得特定的返回值时,我无法使其工作。

我应该如何进行?

0 个答案:

没有答案