diff options
Diffstat (limited to 'spec/frontend/search_autocomplete_spec.js')
-rw-r--r-- | spec/frontend/search_autocomplete_spec.js | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/spec/frontend/search_autocomplete_spec.js b/spec/frontend/search_autocomplete_spec.js index 05b36474548..ee46dc015af 100644 --- a/spec/frontend/search_autocomplete_spec.js +++ b/spec/frontend/search_autocomplete_spec.js @@ -2,10 +2,11 @@ import $ from 'jquery'; import '~/gl_dropdown'; +import AxiosMockAdapter from 'axios-mock-adapter'; +import { mockTracking, unmockTracking } from 'helpers/tracking_helper'; import initSearchAutocomplete from '~/search_autocomplete'; import '~/lib/utils/common_utils'; import axios from '~/lib/utils/axios_utils'; -import AxiosMockAdapter from 'axios-mock-adapter'; describe('Search autocomplete dropdown', () => { let widget = null; @@ -274,11 +275,32 @@ describe('Search autocomplete dropdown', () => { }); describe('enableAutocomplete', () => { + let toggleSpy; + let trackingSpy; + + beforeEach(() => { + toggleSpy = jest.spyOn(widget.dropdownToggle, 'dropdown'); + trackingSpy = mockTracking('_category_', undefined, jest.spyOn); + document.body.dataset.page = 'some:page'; // default tracking for category + }); + + afterEach(() => { + unmockTracking(); + }); + it('should open the Dropdown', () => { - const toggleSpy = jest.spyOn(widget.dropdownToggle, 'dropdown'); widget.enableAutocomplete(); expect(toggleSpy).toHaveBeenCalledWith('toggle'); }); + + it('should track the opening', () => { + widget.enableAutocomplete(); + + expect(trackingSpy).toHaveBeenCalledWith(undefined, 'click_search_bar', { + label: 'main_navigation', + property: 'navigation', + }); + }); }); }); |