@kiwicom/smart-faq
Version:
Smart FAQ
80 lines (73 loc) • 1.92 kB
JavaScript
// @flow
import * as React from 'react';
import ReactDOMServer from 'react-dom/server';
import SmartFAQ from '../SmartFAQApp';
import translations from '../translations/enKeys.json';
import brands from '../../static/brands.json';
const user = {
id: '1',
email: 'joe.doe@example.com',
firstname: 'Joe',
lastname: 'Doe',
};
const chatConfig = {
ORG_ID: '1234',
};
describe('SmartFAQ', () => {
it('should work on the server', () => {
const app = ReactDOMServer.renderToStaticMarkup(
<SmartFAQ
onClose={jest.fn()}
onLogin={jest.fn()}
onLogout={jest.fn()}
translations={translations}
language="en"
direction="ltr"
brand="kiwicom"
brandConfig={brands['kiwicom']}
emergencies={[]}
user={user}
route="/"
bid={null}
loginToken="AAABBBCCC"
kwAuthToken={null}
simpleToken={null}
enableChat={false}
showBooking
chatConfig={chatConfig}
onToggleIsClosable={jest.fn()}
isChatActive
/>,
);
expect(app.includes('Need help?')).toBe(true);
expect(app).toMatchSnapshot();
});
it('should render faqs', () => {
const app = ReactDOMServer.renderToStaticMarkup(
<SmartFAQ
onClose={jest.fn()}
onLogin={jest.fn()}
onLogout={jest.fn()}
translations={translations}
language="en"
direction="ltr"
brand="kiwicom"
brandConfig={brands['kiwicom']}
emergencies={[]}
user={user}
route="/faq/"
loginToken="AAABBBCCC"
bid={null}
kwAuthToken={null}
simpleToken={null}
enableChat={false}
showBooking
chatConfig={chatConfig}
onToggleIsClosable={jest.fn()}
isChatActive
/>,
);
expect(app.includes('Help')).toBe(true);
expect(app).toMatchSnapshot();
});
});