diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-26 09:07:52 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-26 09:07:52 +0000 |
commit | 7e019504f5ac6decde690565857238e7e59aa034 (patch) | |
tree | fab8832b40e25fc9bc1ae54b9303b95ea146b5d5 /spec/frontend/monitoring/components | |
parent | 116d4e56e83a1f408afe710ce070e699ba206475 (diff) | |
download | gitlab-ce-7e019504f5ac6decde690565857238e7e59aa034.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/monitoring/components')
-rw-r--r-- | spec/frontend/monitoring/components/dashboard_url_time_spec.js | 27 | ||||
-rw-r--r-- | spec/frontend/monitoring/components/panel_type_spec.js | 17 |
2 files changed, 43 insertions, 1 deletions
diff --git a/spec/frontend/monitoring/components/dashboard_url_time_spec.js b/spec/frontend/monitoring/components/dashboard_url_time_spec.js index bf5a11a536e..ebfa09874fa 100644 --- a/spec/frontend/monitoring/components/dashboard_url_time_spec.js +++ b/spec/frontend/monitoring/components/dashboard_url_time_spec.js @@ -1,7 +1,13 @@ import { mount } from '@vue/test-utils'; import MockAdapter from 'axios-mock-adapter'; import createFlash from '~/flash'; -import { queryToObject, redirectTo, removeParams, mergeUrlParams } from '~/lib/utils/url_utility'; +import { + queryToObject, + redirectTo, + removeParams, + mergeUrlParams, + updateHistory, +} from '~/lib/utils/url_utility'; import axios from '~/lib/utils/axios_utils'; import { mockProjectDir } from '../mock_data'; @@ -137,4 +143,23 @@ describe('dashboard invalid url parameters', () => { expect(redirectTo).toHaveBeenCalledTimes(1); }); }); + + it('changes the url when a panel moves the time slider', () => { + const timeRange = { + start: '2020-01-01T00:00:00.000Z', + end: '2020-01-01T01:00:00.000Z', + }; + + queryToObject.mockReturnValue(timeRange); + + createMountedWrapper(); + + return wrapper.vm.$nextTick().then(() => { + wrapper.vm.onTimeRangeZoom(timeRange); + + expect(updateHistory).toHaveBeenCalled(); + expect(wrapper.vm.selectedTimeRange.start.toString()).toBe(timeRange.start); + expect(wrapper.vm.selectedTimeRange.end.toString()).toBe(timeRange.end); + }); + }); }); diff --git a/spec/frontend/monitoring/components/panel_type_spec.js b/spec/frontend/monitoring/components/panel_type_spec.js index 058c201d325..927d93ab697 100644 --- a/spec/frontend/monitoring/components/panel_type_spec.js +++ b/spec/frontend/monitoring/components/panel_type_spec.js @@ -99,6 +99,8 @@ describe('Panel Type component', () => { }); describe('when graph data is available', () => { + const findTimeChart = () => wrapper.find({ ref: 'timeChart' }); + beforeEach(() => { createWrapper({ graphData: graphDataPrometheusQueryRange, @@ -122,6 +124,21 @@ describe('Panel Type component', () => { expect(findCopyLink().exists()).toBe(false); }); + it('should emit `timerange` event when a zooming in/out in a chart occcurs', () => { + const timeRange = { + start: '2020-01-01T00:00:00.000Z', + end: '2020-01-01T01:00:00.000Z', + }; + + jest.spyOn(wrapper.vm, '$emit'); + + findTimeChart().vm.$emit('datazoom', timeRange); + + return wrapper.vm.$nextTick(() => { + expect(wrapper.vm.$emit).toHaveBeenCalledWith('timerangezoom', timeRange); + }); + }); + describe('Time Series Chart panel type', () => { it('is rendered', () => { expect(wrapper.find(TimeSeriesChart).isVueInstance()).toBe(true); |