Я пытаюсь загрузить страницу с таблицей и полем поиска и написать тест для имитации события onChange для этого поля, установить значение и затем имитировать щелчок, после чего будет отфильтрованная таблица.
Я создаю экземпляр оболочки,
const setup = (props = {}) =>
mount(
<Provider store={mockStore(props)}>
<Router>
<VirtualIssues />
</Router>
</Provider>,
);
const wrapper = setup(defaultStore);
const input = wrapper.find(`[name="search-input"]`);
Проблема здесь в том, что он находит 6 разных узлов с этим именем (что само по себе странно). Итак, затем я пытаюсь выбрать узел и смоделировать событие onChange,
input.at(0).simulate('change', {
target: { value: 'hello' },
});
Чтобы убедиться, что изменения вступили в силу, я пытаюсь распечатать его на консоли,
console.log(input.debug());
Однако значение «привет» нигде не найдено. Я даже пытался запустить input.update()
, но это тоже не помогло. Что я тут не так делаю?