How to do unit test in enzyme for checking <title>
and <meta />
exist and its content ?
index.test.js
describe('<Helmet />', () => {
it('should render an <Helmet> tag', () => {
let wrapper = mount(
<IntlProvider locale='en'>
<ThemeProvider theme={theme}>
<Helmet />
</ThemeProvider>
</IntlProvider>
);
console.log(wrapper.find('title').length);
// expect(document.title).to.equal('My page title);
});
});
index.js
const App = ({ intl }) => {
const domain = window.location.hostname;
return (
<div>
<Helmet>
<title>My page title</title>
<meta name="title" content="meta content" />
<meta name="description" content="meta description" />
<meta property="og:title" content="meta title for fb" />
<meta property="og:description" content="meta description for fb" />
<meta property="og:url" content={`https://${domain}/`} />
</Helmet>
<CookiesProvider>
<Switch>
<Route exact path="/" component={Home} />
<Route component={NotFoundPage} />
</Switch>
</CookiesProvider>
</div>
);
};