Неглубокие тестовые функции в качестве дочерних компонентов - PullRequest
0 голосов
/ 17 сентября 2018

Я добавил компонент, который использует функцию как ребенок. У меня были мелкие ферментные тесты на этот компонент, который перестал работать.

Как я могу проверить компонент, который использует функцию как ребенок?

Компонент

return (
  <I18n>
    {({ i18n }) => (
      <div />
    )}
  </I18n>
)

Тесты, которые я пробовал

import { shallow } from 'enzyme';

wrapper = shallow(<Component />)
  .find('I18n')
  .children();
console.log(wrapper.debug()); //outputs: [function]


wrapper = shallow(<Component />)
  .find('I18n')
  .children()();
// TypeError: (0 , _enzyme.shallow)(...).find(...).children(...) is not a function

1 Ответ

0 голосов
/ 06 октября 2018

Дети должны быть приобретены как собственность, а не называться напрямую детьми, и I18n также должен быть отрисован поверхностно.

const outerWrapper = shallow(< Component />);
wrapper = shallow(outerWrapper.find('I18n').prop('children')());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...