@kiwicom/smart-faq
Version:
Smart FAQ
48 lines (42 loc) • 1.26 kB
JavaScript
// @flow
import * as React from 'react';
import { mount } from 'enzyme';
import Contexts from '../../../shared/ssr/Contexts';
import { FullPageVersion } from '../PageVariant';
import { Desktop } from '../Responsive';
const FakeComponent = () => <div>Hello World!</div>;
// Simulate SSR environment
const CreateContext = ({ screenWidth }) => {
const GeneratedComponent = () => (
<Contexts
location=""
lng="en"
userContext={{}}
theme={{}}
currencyId=""
countries={{}}
brand={{}}
language={{}}
fetched={{}}
intl={{}}
screenWidth={screenWidth}
>
<FullPageVersion>
<Desktop>
<FakeComponent />
</Desktop>
</FullPageVersion>
</Contexts>
);
return GeneratedComponent;
};
describe('Guess page width in SSR', () => {
it('should render fullpage version desktop component on desktop', () => {
const Component = CreateContext({ screenWidth: 1280 });
expect(mount(<Component />).find(FakeComponent)).toHaveLength(1);
});
it('should not render fullpage version desktop component on mobile', () => {
const Component = CreateContext({ screenWidth: 320 });
expect(mount(<Component />).find(FakeComponent)).toHaveLength(0);
});
});