Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Vargas <jvargas@gitlab.com>2019-03-12 21:55:43 +0300
committerJose Vargas <jvargas@gitlab.com>2019-04-04 23:53:03 +0300
commitf77ff0c7bdc0b3a18406bf256dc5814833c14d23 (patch)
tree474df9d2cde526a65b013785b0649ba08750cca1 /spec/javascripts/monitoring
parent1ddd9eff6dd931b0689743d571b7bf3fccedb979 (diff)
Add support for time windows for the performance dashbooards
The performance dashboards will now display the data from a set amount of time windows that are defined on a constants file
Diffstat (limited to 'spec/javascripts/monitoring')
-rw-r--r--spec/javascripts/monitoring/dashboard_spec.js23
1 files changed, 22 insertions, 1 deletions
diff --git a/spec/javascripts/monitoring/dashboard_spec.js b/spec/javascripts/monitoring/dashboard_spec.js
index 454777fa912..ebf3972b00d 100644
--- a/spec/javascripts/monitoring/dashboard_spec.js
+++ b/spec/javascripts/monitoring/dashboard_spec.js
@@ -1,6 +1,7 @@
import Vue from 'vue';
import MockAdapter from 'axios-mock-adapter';
import Dashboard from '~/monitoring/components/dashboard.vue';
+import { timeWindows } from '~/monitoring/constants';
import axios from '~/lib/utils/axios_utils';
import { metricsGroupsAPIResponse, mockApiEndpoint, environmentData } from './mock_data';
@@ -131,7 +132,7 @@ describe('Dashboard', () => {
setTimeout(() => {
const dropdownMenuEnvironments = component.$el.querySelectorAll(
- '.js-environments-dropdown .dropdown-item',
+ '.js-environments-dropdown ul',
);
expect(dropdownMenuEnvironments.length).toEqual(0);
@@ -176,6 +177,26 @@ describe('Dashboard', () => {
done();
});
});
+
+ it('renders the time window dropdown with a set of options ', done => {
+ const component = new DashboardComponent({
+ el: document.querySelector('.prometheus-graphs'),
+ propsData: { ...propsData, hasMetrics: true, showPanels: false },
+ });
+ const numberOfTimeWindows = Object.keys(timeWindows).length;
+
+ setTimeout(() => {
+ const timeWindowDropdown = component.$el.querySelector('#time-window-dropdown');
+ const timeWindowDropdownEls = component.$el.querySelectorAll(
+ '#time-window-dropdown .dropdown-item',
+ );
+
+ expect(timeWindowDropdown).not.toBeNull();
+ expect(timeWindowDropdownEls.length).toEqual(numberOfTimeWindows);
+
+ done();
+ });
+ });
});
describe('when the window resizes', () => {