Пытаюсь понять здесь, как я могу протестировать использование компонента 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);
, если да, как я могу это сделать поскольку он возвращает функцию.
Спасибо