@kiwicom/smart-faq
Version:
47 lines (41 loc) • 1.21 kB
JavaScript
// @flow
import * as React from 'react';
import { MemoryRouter } from 'react-router';
import LogContext from '@kiwicom/nitro/lib/services/log/context';
import { mount } from 'enzyme';
import ContactUsLink from '../ContactUsLink';
import { SearchState } from '../../../context/SearchState';
const defaultContext = {
changeSearchText: jest.fn(),
clearSearch: jest.fn(),
incrementQueriesCount: jest.fn(),
resetQueriesCount: jest.fn(),
toggleSearch: jest.fn(),
disableSearch: jest.fn(),
enableSearch: jest.fn(),
queriesBeforeClick: 0,
isVisible: true,
};
describe('ContactUsLink', () => {
it('sends event on click', () => {
const log = jest.fn();
const wrapper = mount(
<MemoryRouter>
<SearchState.Provider
value={{ ...defaultContext, searchText: 'how to boo' }}
>
<LogContext.Provider value={{ log }}>
<ContactUsLink />
</LogContext.Provider>
</SearchState.Provider>
</MemoryRouter>,
);
wrapper.find('a').simulate('click');
expect(log.mock.calls[0][1]).toEqual({
articleId: '',
categoryId: '',
searchText: 'how to boo',
section: 'BEFORE_BOOKING',
});
});
});