如何在mocha unittest中模拟对象?

时间:2017-02-27 23:56:36

标签: javascript unit-testing reactjs mocha enzyme

在我的reactjs组件中,我有一个名为getContainer(doc)的方法,其中包含以下行:

  let w = Math.max(doc.documentElement.clientWidth, window.innerWidth);

它需要一个名为doc:htmldocument的参数。在我的摩卡单元测试中,我得到了:

let mockDoc =  {documentElement: {clientWidth:100}}
let res = wrapper.instance().getContainer(mockDoc);

当我运行测试时,我仍然会收到错误,我该如何解决?

错误:

 TypeError: Cannot read property 'clientWidth' of undefined

1 个答案:

答案 0 :(得分:0)

你可以使用像jsdom这样的视觉dom库,有关详细信息,你可以看到jsdom。它很简单易用。这是一个enzyme的演示