Тест: Нажмите (fireEvent.click) на ссылку в реакции-маршрутизатор-дом с библиотекой реагирования-тестирования не срабатывает - PullRequest
0 голосов
/ 29 мая 2019

Я тестирую ссылку из «activ-router-dom» с библиотекой реагировать-тестирования.

Обычно щелкнув по этой ссылке, на странице должно появиться linkId.

Но fireEvent.click на моих тестах, не вызывает действие. Поэтому у меня нет моего контента.


      <ul>
        <li>
          <Link  data-testid="item" to={generatePath(LINK_TEST, { linkId: 'Link_test1' })}>Link Test 1</Link>
        </li>
... test : 

    const linkButton = getByText(/Link Test 1/)

    fireEvent.click(linkButton)

    const content = queryAllByText(/Page : Link_test1/)
    await waitForElement(() => content)
    expect(content).toHaveLength(1)

1 Ответ

0 голосов
/ 16 июля 2019

Я столкнулся с этой проблемой со ВСЕМИ ссылками (я не использую реагирующий маршрутизатор-дом).Но один из способов обойти это - установить URL с помощью window.location.href = linkHref.

Когда я это сделал, он вызвал обработчики событий, которые я настроил.

Не уверен, поможет ли это в малейшей степени, но хотел упомянуть это как возможный обходной путь.У вашего linkButton будет свойство href, которое вы можете поймать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...