diff options
Diffstat (limited to 'spec/frontend/logs')
6 files changed, 63 insertions, 27 deletions
diff --git a/spec/frontend/logs/components/environment_logs_spec.js b/spec/frontend/logs/components/environment_logs_spec.js index 6421aca684f..559ce4f9414 100644 --- a/spec/frontend/logs/components/environment_logs_spec.js +++ b/spec/frontend/logs/components/environment_logs_spec.js @@ -39,13 +39,22 @@ describe('EnvironmentLogs', () => { }; const updateControlBtnsMock = jest.fn(); + const LogControlButtonsStub = { + template: '<div/>', + methods: { + update: updateControlBtnsMock, + }, + props: { + scrollDownButtonDisabled: false, + }, + }; const findEnvironmentsDropdown = () => wrapper.find('.js-environments-dropdown'); const findSimpleFilters = () => wrapper.find({ ref: 'log-simple-filters' }); const findAdvancedFilters = () => wrapper.find({ ref: 'log-advanced-filters' }); const findElasticsearchNotice = () => wrapper.find({ ref: 'elasticsearchNotice' }); - const findLogControlButtons = () => wrapper.find({ name: 'log-control-buttons-stub' }); + const findLogControlButtons = () => wrapper.find(LogControlButtonsStub); const findInfiniteScroll = () => wrapper.find({ ref: 'infiniteScroll' }); const findLogTrace = () => wrapper.find({ ref: 'logTrace' }); @@ -76,16 +85,7 @@ describe('EnvironmentLogs', () => { propsData, store, stubs: { - LogControlButtons: { - name: 'log-control-buttons-stub', - template: '<div/>', - methods: { - update: updateControlBtnsMock, - }, - props: { - scrollDownButtonDisabled: false, - }, - }, + LogControlButtons: LogControlButtonsStub, GlInfiniteScroll: { name: 'gl-infinite-scroll', template: ` @@ -121,9 +121,6 @@ describe('EnvironmentLogs', () => { it('displays UI elements', () => { initWrapper(); - expect(wrapper.isVueInstance()).toBe(true); - expect(wrapper.isEmpty()).toBe(false); - expect(findEnvironmentsDropdown().is(GlDeprecatedDropdown)).toBe(true); expect(findSimpleFilters().exists()).toBe(true); expect(findLogControlButtons().exists()).toBe(true); diff --git a/spec/frontend/logs/components/log_advanced_filters_spec.js b/spec/frontend/logs/components/log_advanced_filters_spec.js index 007c5000e16..3a3c23c95b8 100644 --- a/spec/frontend/logs/components/log_advanced_filters_spec.js +++ b/spec/frontend/logs/components/log_advanced_filters_spec.js @@ -68,9 +68,6 @@ describe('LogAdvancedFilters', () => { it('displays UI elements', () => { initWrapper(); - expect(wrapper.isVueInstance()).toBe(true); - expect(wrapper.isEmpty()).toBe(false); - expect(findFilteredSearch().exists()).toBe(true); expect(findTimeRangePicker().exists()).toBe(true); }); diff --git a/spec/frontend/logs/components/log_control_buttons_spec.js b/spec/frontend/logs/components/log_control_buttons_spec.js index 38e568f569f..dff38ecb15e 100644 --- a/spec/frontend/logs/components/log_control_buttons_spec.js +++ b/spec/frontend/logs/components/log_control_buttons_spec.js @@ -28,9 +28,6 @@ describe('LogControlButtons', () => { it('displays UI elements', () => { initWrapper(); - expect(wrapper.isVueInstance()).toBe(true); - expect(wrapper.isEmpty()).toBe(false); - expect(findScrollToTop().is(GlButton)).toBe(true); expect(findScrollToBottom().is(GlButton)).toBe(true); expect(findRefreshBtn().is(GlButton)).toBe(true); @@ -57,7 +54,7 @@ describe('LogControlButtons', () => { }); it('click on "scroll to top" scrolls up', () => { - expect(findScrollToTop().is('[disabled]')).toBe(false); + expect(findScrollToTop().attributes('disabled')).toBeUndefined(); findScrollToTop().vm.$emit('click'); @@ -65,7 +62,7 @@ describe('LogControlButtons', () => { }); it('click on "scroll to bottom" scrolls down', () => { - expect(findScrollToBottom().is('[disabled]')).toBe(false); + expect(findScrollToBottom().attributes('disabled')).toBeUndefined(); findScrollToBottom().vm.$emit('click'); diff --git a/spec/frontend/logs/components/log_simple_filters_spec.js b/spec/frontend/logs/components/log_simple_filters_spec.js index e739621431e..1e30a7df559 100644 --- a/spec/frontend/logs/components/log_simple_filters_spec.js +++ b/spec/frontend/logs/components/log_simple_filters_spec.js @@ -18,7 +18,7 @@ describe('LogSimpleFilters', () => { const findPodsDropdownItems = () => findPodsDropdown() .findAll(GlDeprecatedDropdownItem) - .filter(item => !item.is('[disabled]')); + .filter(item => !('disabled' in item.attributes())); const mockPodsLoading = () => { state.pods.options = []; @@ -59,9 +59,6 @@ describe('LogSimpleFilters', () => { it('displays UI elements', () => { initWrapper(); - expect(wrapper.isVueInstance()).toBe(true); - expect(wrapper.isEmpty()).toBe(false); - expect(findPodsDropdown().exists()).toBe(true); }); diff --git a/spec/frontend/logs/mock_data.js b/spec/frontend/logs/mock_data.js index f4c567a2ea3..3fabab4bc59 100644 --- a/spec/frontend/logs/mock_data.js +++ b/spec/frontend/logs/mock_data.js @@ -35,6 +35,7 @@ export const mockManagedApps = [ status: 'connected', path: '/root/autodevops-deploy/-/clusters/15', gitlab_managed_apps_logs_path: '/root/autodevops-deploy/-/logs?cluster_id=15', + enable_advanced_logs_querying: true, }, { cluster_type: 'project_type', @@ -45,6 +46,7 @@ export const mockManagedApps = [ status: 'connected', path: '/root/autodevops-deploy/-/clusters/16', gitlab_managed_apps_logs_path: null, + enable_advanced_logs_querying: false, }, ]; diff --git a/spec/frontend/logs/stores/getters_spec.js b/spec/frontend/logs/stores/getters_spec.js index 9d213d8c01f..bca1ce4ca92 100644 --- a/spec/frontend/logs/stores/getters_spec.js +++ b/spec/frontend/logs/stores/getters_spec.js @@ -1,7 +1,14 @@ import { trace, showAdvancedFilters } from '~/logs/stores/getters'; import logsPageState from '~/logs/stores/state'; -import { mockLogsResult, mockTrace, mockEnvName, mockEnvironments } from '../mock_data'; +import { + mockLogsResult, + mockTrace, + mockEnvName, + mockEnvironments, + mockManagedApps, + mockManagedAppName, +} from '../mock_data'; describe('Logs Store getters', () => { let state; @@ -72,4 +79,43 @@ describe('Logs Store getters', () => { }); }); }); + + describe('when no managedApps are set', () => { + beforeEach(() => { + state.environments.current = null; + state.environments.options = []; + state.managedApps.current = mockManagedAppName; + state.managedApps.options = []; + }); + + it('returns false', () => { + expect(showAdvancedFilters(state)).toBe(false); + }); + }); + + describe('when the managedApp supports filters', () => { + beforeEach(() => { + state.environments.current = null; + state.environments.options = mockEnvironments; + state.managedApps.current = mockManagedAppName; + state.managedApps.options = mockManagedApps; + }); + + it('returns true', () => { + expect(showAdvancedFilters(state)).toBe(true); + }); + }); + + describe('when the managedApp does not support filters', () => { + beforeEach(() => { + state.environments.current = null; + state.environments.options = mockEnvironments; + state.managedApps.options = mockManagedApps; + state.managedApps.current = mockManagedApps[1].name; + }); + + it('returns false', () => { + expect(showAdvancedFilters(state)).toBe(false); + }); + }); }); |