32 lines
907 B
JavaScript
32 lines
907 B
JavaScript
import { shallowMount } from '@vue/test-utils';
|
|
import { mockTracking } from 'helpers/tracking_helper';
|
|
import WelcomePage from '~/projects/experiment_new_project_creation/components/welcome.vue';
|
|
|
|
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' });
|
|
});
|
|
});
|
|
});
|