UNPKG

@kiwicom/smart-faq

Version:

Smart FAQ

58 lines (54 loc) 1.56 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'; const searchText = 'Hola hola'; const queriesBeforeClick = 5; //eslint-disable-line const isVisible = true; const toggleSearch = jest.fn(); const enableSearch = jest.fn(); const disableSearch = jest.fn(); const resetQueriesCount = jest.fn(); const incrementQueriesCount = jest.fn(); const changeSearchText = jest.fn(); window.infinario = { track: jest.fn(), }; const queryText = 'queeery'; describe('SearchTracking', () => { it('input query should track query', done => { const result = mount( <MemoryRouter> <SearchState.Provider value={{ incrementQueriesCount, searchText, changeSearchText, resetQueriesCount, queriesBeforeClick, isVisible, toggleSearch, enableSearch, disableSearch, }} > <SearchBar /> </SearchState.Provider> </MemoryRouter>, ); result .find('input[data-cy="input-staticFAQ"]') .first() .simulate('change', { target: { value: queryText } }); setTimeout(() => { expect(window.infinario.track.mock.calls).toHaveLength(1); expect(window.infinario.track.mock.calls[0][1]).toEqual({ action: 'search', searchedText: queryText, }); done(); }, 400); }); });