【发布时间】:2019-11-26 03:40:10
【问题描述】:
it('should call setCampaignDate on click', function () {
let spySetCampaign = sinon.spy(wrapper.instance(), 'setCampaignDate');
let datePickers = wrapper.find('.campaign-date-tab').dive().find(Datepicker);
assert.equal(datePickers.length, 2);
console.log(datePickers);
var date = new Date();
for (let index = 0; index < datePickers.length; index++) {
datePickers.simulate('change');
sinon.assert.calledOnce(spySetCampaign.withArgs(date, 'startDate'));
}
});
我正在尝试模拟我的“更改”功能并尝试测试是否调用了“setCampaignDate”。这里的问题是我find返回的浅层组件的长度是2:
let datePickers = wrapper.find('.campaign-date-tab').dive().find(Datepicker);
当尝试在“datepickers”上调用模拟时,会出现如下错误:
'Error: Method “props” is only meant to be run on a single node. 2 found instead.'.
不确定如何在节点数大于 1 的组件上进行模拟。
【问题讨论】:
标签: reactjs chai-enzyme