HOC который пропускает все реквизиты - PullRequest
0 голосов
/ 25 октября 2019

Я думаю о написании некоторого утилиты React (возможно, HOC), которая позволяет мне тестировать такой код:

    const wrapper = enzyme
      .mount(
        withTestTheme(
          <JsonInput
            onChange={onChange}
            onValueChange={mockOnValueChange}
            value={exampleJsonStringValidated}
          />),
      );

withTestTheme - это оболочка, которая предоставляет свойства темы, но она вызывает у меня проблемы во времятестирование, потому что это вызывает проблемы с доступом к корневому компоненту, который я хочу проверить. Любые идеи по поводу некоторого полезного утилиты для более простого тестирования приведенного выше кода?

Ниже withTestTheme, которая предлагает тему - светлую и темную:

export const withTestTheme = (Component: React.ReactChild) => (
  <ThemeProvider theme={TestTheme}>
  {Component}
</ThemeProvider>
);

1 Ответ

0 голосов
/ 04 ноября 2019

Код, который решил мою проблему:

export const withTestThemeWrapper = (props: { children: React.ReactElement }) => (
  <ThemeProvider theme={TestTheme}>
    {props.children}
  </ThemeProvider>
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...