Игнорировать HOC при тестировании компонентов React - PullRequest
0 голосов
/ 11 февраля 2019

Я хочу протестировать простую форму выбора пользовательского интерфейса для материалов, которая использует FormControl и экспортируется с помощью стилей.Мой тестовый пример довольно прост, я хочу утверждать, например, что мой компонент визуализирует дочерний элемент.Я пробую следующее утверждение:

expect(wrapper.find('InputLabel')).toEqual(true);

Однако это утверждение не выполняется просто потому, что InputLabel обернута внутри WithStyles AND WithFromControlContext (см.выходные данные отладки):

<WithStyles(FormControl) id="my-control-id">
      <WithStyles(WithFormControlContext(InputLabel)) htmlFor="my-control-id">
        My Control Label
      </WithStyles(WithFormControlContext(InputLabel))>
      ...
    </WithStyles(FormControl)>

Можно ли просто проверить наличие дочернего элемента InputLabel, игнорируя все компоненты HOC, которые обернуты вокруг него?

1 Ответ

0 голосов
/ 11 февраля 2019

Как я провел такое тестирование с компонентами, заключенными в HOC, так это то, что я экспортирую как упакованный компонент, так и неупакованный компонент.

Итак, у меня есть

export class MyComponent extends React.Component {
  // All the code
}

export default withStyles(MyComponent);

Итак, в моих тестах я импортирую неупакованный компонент с помощью

import {MyComponent} from './MyComponent';

И в своем коде я импортирую экспорт по умолчанию

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