diff options
Diffstat (limited to 'spec/frontend/projects/experiment_new_project_creation/components/welcome_spec.js')
-rw-r--r-- | spec/frontend/projects/experiment_new_project_creation/components/welcome_spec.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/frontend/projects/experiment_new_project_creation/components/welcome_spec.js b/spec/frontend/projects/experiment_new_project_creation/components/welcome_spec.js new file mode 100644 index 00000000000..acd142fa5ba --- /dev/null +++ b/spec/frontend/projects/experiment_new_project_creation/components/welcome_spec.js @@ -0,0 +1,31 @@ +import { shallowMount } from '@vue/test-utils'; +import WelcomePage from '~/projects/experiment_new_project_creation/components/welcome.vue'; +import { mockTracking } from 'helpers/tracking_helper'; + +describe('Welcome page', () => { + let wrapper; + let trackingSpy; + + const createComponent = propsData => { + wrapper = shallowMount(WelcomePage, { propsData }); + }; + + beforeEach(() => { + trackingSpy = mockTracking('_category_', document, jest.spyOn); + trackingSpy.mockImplementation(() => {}); + }); + + afterEach(() => { + wrapper.destroy(); + window.location.hash = ''; + wrapper = null; + }); + + it('tracks link clicks', () => { + createComponent({ panels: [{ name: 'test', href: '#' }] }); + wrapper.find('a').trigger('click'); + return wrapper.vm.$nextTick().then(() => { + expect(trackingSpy).toHaveBeenCalledWith(undefined, 'click_tab', { label: 'test' }); + }); + }); +}); |