Попытка запустить следующий тест:
Есть несколько событий onChange, и вот только один пример. Когда я запускаю тест, я получаю следующую ошибку:
Метод «имитация» предназначен для запуска на 1 узле. Вместо этого найдено 0
Не уверен, правильно ли я звоню штату. Или это может быть другой подход, так как событие onChange находится внутри модального.
Использование Jest / Enzyme для проверки моих файлов. (React JS)
Вот мой DataFile.test.js
describe('Test', () => {
let wrapper;
beforeEach(() => wrapper = mount(<BrowserRouter><DataFile{...baseProps} /></BrowserRouter>));
it('Test onChange event on FirstName - Label', () => {
baseProps.onChange.mockClear();
wrapper.setState({
quickFilterModalOpen: false,
selectedQuickfilter: true,
advancedFilter: {
FirstName: 'test-FirstName',
},
});
wrapper.update();
wrapper.find('input[id="fname-label-test"]').simulate('change', { target: { value: 'test-FirstName' } });
expect(wrapper.state().FirstName).toEqual('test-FirstName1');
});
Вот метод визуализации File.js:
<Modal isOpen={this.state.quickFilterModalOpen} style={descriptionModalStyle}>
<div>
<label>First Name</label>
<input
id="fname-label-test"
onChange={(e) => { this.setState({ advancedFilter: { ...this.state.advancedFilter, FirstName: e.target.value } }); }}
value={this.state.advancedFilter.FirstName}
/>
</div>
</Modal>;