Попытка передать событие onChange.
Это то, что я пытался на данный момент, но я получаю следующую ошибку:
Метод «имитация» предназначен для запуска на 1 узле. Вместо этого найдено 0
file.test.js
it("should call onChange events on Settings-input-radio ", () => {
baseProps.onChange.mockClear();
wrapper.setProps({
});
wrapper.setState({
IsSystem:true
});
wrapper.update()
wrapper.find('input[id="radio-input-true"]').simulate('change')
expect(wrapper.state('isSystem')).toBeTrue
Я добавил Id в файл, чтобы проверить его, не уверенный, нужен ли он
Вот файл .js
Рендер
<div className='settings-input-radio'>
<input type='radio' className='settings-radio' id='radio-input-true'
checked={this.state.isSystem} onChange={(e) => {this.updateJSON('System', true); this.setState({isSystem: true})}}/>
Yes
<input type='radio' className='settings-radio'
checked={!this.state.isSystem} onChange={(e) => {this.updateJSON('System', false); this.setState({isSystem: false})}}/>
No
</div>
Метод:
updateJSON = (name, value) => {
let json = this.props.selectedFormJSON;
json[name] = value
this.props.updateSelectedFormJSON(json);
}