Можно ли протестировать событие onChange, используя document.querySelector внутри модального
Использование jest и энзима для реакции на файл js
<Modal isOpen={this.state.quickFilterModalOpen} style={descriptionModalStyle}>
<div>
<div className='fullmodal'>
<div id='close-modal' className='sidemodal_addnew_x' onClick={this.closeModal}>
<FontAwesome name='xbutton' className='fa-times' />
</div>
</div>
<div className='advanced-search-modal-body'>
<div className='advanced-search-modal-inner'>
<label>First Name</label>
<input id='first-name-filter'onChange={(e) => {this.setState({advancedFilter: {...this.state.advancedFilter, FirstName: e.target.value}})}} value={this.state.advancedFilter.FirstName}/>
Вот мой тестовый файл
Я сделал до сих пор с событиями кликов, но не с Onchange
Попытка получить следующее событие onChange для передачи
it('Test click event on Modal : Save Button', () => {
baseProps.onClick.mockClear();
ReactModal.setAppElement('body');
wrapper = mount(
<ReactModal isOpen>
<div className="fullmodal">
some content
</div>
</ReactModal>,
{attachTo: mountingDiv}
);
wrapper.setState({
quickFilterModalOpen:true,
advancedFilter:'test'
})
wrapper.update()
expect(wrapper.find('.fullmodal').exists()).toEqual(false);
expect(!!document.body.querySelector('.fullmodal')).toEqual(true);
document.querySelector("#first-name-filter").change(); //wrong