В общем, что-то вроде этого:
it('For first cancel button', () => {
// Reset info from possible previous calls of these mock functions:
baseProps.hideAddViewModal.mockClear();
wrapper.setProps({});
// Find the button and call the onClick handler
wrapper.setState({
ViewName: 'something',
allowNext: true,
})
wrapper.find('.cancel_button').at(0).simulate('click');
})
затем
it('For second cancel button', () => {
// Reset info from possible previous calls of these mock functions:
baseProps.hideAddViewModal.mockClear();
wrapper.setProps({});
// Find the button and call the onClick handler
wrapper.setState({
ViewName: 'something',
RequestID: 'something',
Requests: ['random, I dont know the type inside here so']
})
wrapper.find('.cancel_button').at(0).simulate('click');
})
Также есть какая-то причина, по которой вы пишете свои обработчики кликов, подобные этому
onClick={() => {
this.onContinueClick();
}}
вместо этого
onClick={this.onContinueClick}
Что касается другой проблемы,
Вы можете отредактировать baseProps
, чтобы она выглядела так:
const baseProps = {
hideAddViewModal,
location: {
pathname: 'home'
},
}