Тестирование использования React HO C в компоненте с помощью Enzyme - PullRequest
0 голосов
/ 07 мая 2020

Пытаюсь понять здесь, как я могу протестировать использование компонента HO C в моем компоненте. Сейчас я не могу написать тест, который нужно сдать. Код и тест, которые у меня есть до сих пор:

HOC
~~~
function withAccess(WrappedComponent) {
  const maybeComponent = (props) => {
    const hasAccess = checkAccess(props);

    if (!hasAccess) {
        return null;
    }

    return (
        <WrappedComponent {...props}/>
    );
  };

  return maybeComponent;
}

export default withAccess;

MyComponent.js
~~~~~~~~~~~
function MyComponent(props) {
  const MaybeComponent = withAccess(ViewButton);

  return (
    <MaybeComponent {...props}/>
  );
}

Test
~~~~
describe('Test', () => {
  it('should pass ', () => {
    const props = {};
    const renderedElement = enzyme.shallow(<MyComponent {...props}/>);

    expect(renderedElement.type()).to.equal(ViewButton);
  });
 });

Я получаю ошибку AssertionError: expected [Function: maybeComponent] to equal [Function: ViewButton]

Итак, вопрос в том, должен ли я издеваться над withAccess(ViewButton);, если да, как я могу это сделать поскольку он возвращает функцию.

Спасибо

...