UNPKG

@kiwicom/smart-faq

Version:

55 lines (49 loc) 1.33 kB
// @flow import * as React from 'react'; import { MemoryRouter } from 'react-router'; import { mount } from 'enzyme'; import SearchBar from '../SearchBar'; import { SearchState } from '../../../SmartFAQ/context/SearchState'; import { track } from '../../cuckoo/tracker'; jest.mock('../../cuckoo/tracker', () => ({ track: jest.fn(), })); const searchContext = { searchText: 'Hola hola', queriesBeforeClick: 5, isVisible: true, toggleSearch: jest.fn(), enableSearch: jest.fn(), disableSearch: jest.fn(), resetQueriesCount: jest.fn(), incrementQueriesCount: jest.fn(), changeSearchText: jest.fn(), }; describe('SearchTracking', () => { it('input query should track query', done => { const result = mount( <MemoryRouter> <SearchState.Provider value={searchContext}> <SearchBar /> </SearchState.Provider> </MemoryRouter>, ); result .find('input[data-test="SearchBarInput"]') .first() .simulate('change', { target: { value: 'queeery' } }); setTimeout(() => { // $FlowExpectedError: Expected const calls = track.mock.calls; expect(calls).toHaveLength(1); expect(calls[0]).toEqual([ 'FAQs', 'search', { searchedText: 'queeery', }, ]); done(); }, 400); }); });