diff options
Diffstat (limited to 'spec/frontend/clusters_list/components/clusters_main_view_spec.js')
-rw-r--r-- | spec/frontend/clusters_list/components/clusters_main_view_spec.js | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/spec/frontend/clusters_list/components/clusters_main_view_spec.js b/spec/frontend/clusters_list/components/clusters_main_view_spec.js index c2233e5d39c..37665bf7abd 100644 --- a/spec/frontend/clusters_list/components/clusters_main_view_spec.js +++ b/spec/frontend/clusters_list/components/clusters_main_view_spec.js @@ -1,5 +1,6 @@ import { GlTabs, GlTab } from '@gitlab/ui'; import { shallowMountExtended } from 'helpers/vue_test_utils_helper'; +import { mockTracking } from 'helpers/tracking_helper'; import ClustersMainView from '~/clusters_list/components/clusters_main_view.vue'; import InstallAgentModal from '~/clusters_list/components/install_agent_modal.vue'; import { @@ -8,12 +9,15 @@ import { CLUSTERS_TABS, MAX_CLUSTERS_LIST, MAX_LIST_COUNT, + EVENT_LABEL_TABS, + EVENT_ACTIONS_CHANGE, } from '~/clusters_list/constants'; const defaultBranchName = 'default-branch'; describe('ClustersMainViewComponent', () => { let wrapper; + let trackingSpy; const propsData = { defaultBranchName, @@ -23,6 +27,7 @@ describe('ClustersMainViewComponent', () => { wrapper = shallowMountExtended(ClustersMainView, { propsData, }); + trackingSpy = mockTracking(undefined, wrapper.element, jest.spyOn); }); afterEach(() => { @@ -54,10 +59,10 @@ describe('ClustersMainViewComponent', () => { describe('tabs', () => { it.each` - tabTitle | queryParamValue | lineNumber - ${'All'} | ${'all'} | ${0} - ${'Agent'} | ${AGENT} | ${1} - ${'Certificate based'} | ${CERTIFICATE_BASED} | ${2} + tabTitle | queryParamValue | lineNumber + ${'All'} | ${'all'} | ${0} + ${'Agent'} | ${AGENT} | ${1} + ${'Certificate'} | ${CERTIFICATE_BASED} | ${2} `( 'renders correct tab title and query param value', ({ tabTitle, queryParamValue, lineNumber }) => { @@ -71,6 +76,7 @@ describe('ClustersMainViewComponent', () => { beforeEach(() => { findComponent().vm.$emit('changeTab', AGENT); }); + it('changes the tab', () => { expect(findTabs().attributes('value')).toBe('1'); }); @@ -78,5 +84,13 @@ describe('ClustersMainViewComponent', () => { it('passes correct max-agents param to the modal', () => { expect(findModal().props('maxAgents')).toBe(MAX_LIST_COUNT); }); + + it('sends the correct tracking event', () => { + findTabs().vm.$emit('input', 1); + expect(trackingSpy).toHaveBeenCalledWith(undefined, EVENT_ACTIONS_CHANGE, { + label: EVENT_LABEL_TABS, + property: AGENT, + }); + }); }); }); |