summaryrefslogtreecommitdiff
path: root/spec/frontend
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-07-01 09:09:30 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-07-01 09:09:30 +0000
commita66a37ceff963198142f0deaecaa4ac2719ef8c7 (patch)
tree16c3ea23090a53572cfcb1475fca339723a86637 /spec/frontend
parent831defac9169ad4c411f54eae54d8b051ff6d691 (diff)
downloadgitlab-ce-a66a37ceff963198142f0deaecaa4ac2719ef8c7.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend')
-rw-r--r--spec/frontend/boards/issue_card_spec.js2
-rw-r--r--spec/frontend/monitoring/__snapshots__/utils_spec.js.snap40
-rw-r--r--spec/frontend/monitoring/fixture_data.js13
-rw-r--r--spec/frontend/monitoring/utils_spec.js12
-rw-r--r--spec/frontend/vue_shared/components/issue/issue_assignees_spec.js2
-rw-r--r--spec/frontend/vue_shared/components/issue/issue_milestone_spec.js2
6 files changed, 57 insertions, 14 deletions
diff --git a/spec/frontend/boards/issue_card_spec.js b/spec/frontend/boards/issue_card_spec.js
index 09b5c664bee..15750a161ae 100644
--- a/spec/frontend/boards/issue_card_spec.js
+++ b/spec/frontend/boards/issue_card_spec.js
@@ -6,7 +6,7 @@ import '~/boards/models/assignee';
import '~/boards/models/issue';
import '~/boards/models/list';
import IssueCardInner from '~/boards/components/issue_card_inner.vue';
-import { listObj } from '../../javascripts/boards/mock_data';
+import { listObj } from './mock_data';
import store from '~/boards/stores';
import { GlLabel } from '@gitlab/ui';
diff --git a/spec/frontend/monitoring/__snapshots__/utils_spec.js.snap b/spec/frontend/monitoring/__snapshots__/utils_spec.js.snap
new file mode 100644
index 00000000000..bb0e12fb190
--- /dev/null
+++ b/spec/frontend/monitoring/__snapshots__/utils_spec.js.snap
@@ -0,0 +1,40 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`monitoring/utils stateAndPropsFromDataset initial monitoring data from fixture should match snapshot 1`] = `
+Object {
+ "dataProps": Object {
+ "alertsEndpoint": "/monitoring/monitor-project/prometheus/alerts.json?environment_id=1",
+ "clustersPath": "/monitoring/monitor-project/-/clusters",
+ "customMetricsAvailable": true,
+ "customMetricsPath": "/monitoring/monitor-project/prometheus/metrics",
+ "defaultBranch": "master",
+ "documentationPath": "/help/administration/monitoring/prometheus/index.md",
+ "emptyGettingStartedSvgPath": "/images/illustrations/monitoring/getting_started.svg",
+ "emptyLoadingSvgPath": "/images/illustrations/monitoring/loading.svg",
+ "emptyNoDataSmallSvgPath": "/images/illustrations/chart-empty-state-small.svg",
+ "emptyNoDataSvgPath": "/images/illustrations/monitoring/no_data.svg",
+ "emptyUnableToConnectSvgPath": "/images/illustrations/monitoring/unable_to_connect.svg",
+ "environmentState": "available",
+ "externalDashboardUrl": null,
+ "hasMetrics": false,
+ "metricsDashboardBasePath": "/monitoring/monitor-project/-/environments/1/metrics",
+ "metricsEndpoint": "/monitoring/monitor-project/-/environments/1/additional_metrics.json",
+ "prometheusAlertsAvailable": true,
+ "prometheusStatus": "",
+ "settingsPath": "/monitoring/monitor-project/-/services/prometheus/edit",
+ "tagsPath": "/monitoring/monitor-project/-/tags",
+ "validateQueryPath": "/monitoring/monitor-project/prometheus/metrics/validate_query",
+ },
+ "initState": Object {
+ "currentDashboard": undefined,
+ "currentEnvironmentName": "environment1",
+ "customDashboardBasePath": ".gitlab/dashboards",
+ "dashboardEndpoint": "/monitoring/monitor-project/-/environments/1/metrics_dashboard.json",
+ "dashboardTimezone": "LOCAL",
+ "dashboardsEndpoint": "/monitoring/monitor-project/-/performance_monitoring/dashboards.json",
+ "deploymentsEndpoint": "/monitoring/monitor-project/-/environments/1/deployments.json",
+ "logsPath": "/monitoring/monitor-project/-/logs?environment_name=environment1",
+ "projectPath": "/monitoring/monitor-project",
+ },
+}
+`;
diff --git a/spec/frontend/monitoring/fixture_data.js b/spec/frontend/monitoring/fixture_data.js
index c2556bc71dc..edf466836f3 100644
--- a/spec/frontend/monitoring/fixture_data.js
+++ b/spec/frontend/monitoring/fixture_data.js
@@ -1,8 +1,7 @@
import { stateAndPropsFromDataset } from '~/monitoring/utils';
import { mapToDashboardViewModel } from '~/monitoring/stores/utils';
import { metricStates } from '~/monitoring/constants';
-import { convertObjectProps } from '~/lib/utils/common_utils';
-import { convertToCamelCase } from '~/lib/utils/text_utility';
+import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
import { metricsResult } from './mock_data';
@@ -12,14 +11,8 @@ export const metricsDashboardResponse = getJSONFixture(
);
export const metricsDashboardPayload = metricsDashboardResponse.dashboard;
-const datasetState = stateAndPropsFromDataset(
- // It's preferable to have props in snake_case, this will be addressed at:
- // https://gitlab.com/gitlab-org/gitlab/-/merge_requests/33574
- convertObjectProps(
- // Some props use kebab-case, convert to snake_case first
- key => convertToCamelCase(key.replace(/-/g, '_')),
- metricsDashboardResponse.metrics_data,
- ),
+export const datasetState = stateAndPropsFromDataset(
+ convertObjectPropsToCamelCase(metricsDashboardResponse.metrics_data),
);
export const dashboardProps = datasetState.dataProps;
diff --git a/spec/frontend/monitoring/utils_spec.js b/spec/frontend/monitoring/utils_spec.js
index 039cf275eea..4f9414ad0e9 100644
--- a/spec/frontend/monitoring/utils_spec.js
+++ b/spec/frontend/monitoring/utils_spec.js
@@ -1,4 +1,5 @@
import * as monitoringUtils from '~/monitoring/utils';
+import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
import * as urlUtils from '~/lib/utils/url_utility';
import { TEST_HOST } from 'jest/helpers/test_constants';
import {
@@ -7,7 +8,7 @@ import {
anomalyMockGraphData,
barMockData,
} from './mock_data';
-import { metricsDashboardViewModel, graphData } from './fixture_data';
+import { metricsDashboardResponse, metricsDashboardViewModel, graphData } from './fixture_data';
const mockPath = `${TEST_HOST}${mockProjectDir}/-/environments/29/metrics`;
@@ -25,6 +26,15 @@ const rollingRange = {
};
describe('monitoring/utils', () => {
+ describe('stateAndPropsFromDataset', () => {
+ it('initial monitoring data from fixture should match snapshot', () => {
+ const datasetState = monitoringUtils.stateAndPropsFromDataset(
+ convertObjectPropsToCamelCase(metricsDashboardResponse.metrics_data),
+ );
+ expect(datasetState).toMatchSnapshot();
+ });
+ });
+
describe('trackGenerateLinkToChartEventOptions', () => {
it('should return Cluster Monitoring options if located on Cluster Health Dashboard', () => {
document.body.dataset.page = 'groups:clusters:show';
diff --git a/spec/frontend/vue_shared/components/issue/issue_assignees_spec.js b/spec/frontend/vue_shared/components/issue/issue_assignees_spec.js
index ca75c55df26..548d4476c0f 100644
--- a/spec/frontend/vue_shared/components/issue/issue_assignees_spec.js
+++ b/spec/frontend/vue_shared/components/issue/issue_assignees_spec.js
@@ -1,7 +1,7 @@
import { shallowMount } from '@vue/test-utils';
import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue';
import IssueAssignees from '~/vue_shared/components/issue/issue_assignees.vue';
-import { mockAssigneesList } from '../../../../javascripts/boards/mock_data';
+import { mockAssigneesList } from 'jest/boards/mock_data';
const TEST_CSS_CLASSES = 'test-classes';
const TEST_MAX_VISIBLE = 4;
diff --git a/spec/frontend/vue_shared/components/issue/issue_milestone_spec.js b/spec/frontend/vue_shared/components/issue/issue_milestone_spec.js
index 90c3fe54901..69d8c1a5918 100644
--- a/spec/frontend/vue_shared/components/issue/issue_milestone_spec.js
+++ b/spec/frontend/vue_shared/components/issue/issue_milestone_spec.js
@@ -4,7 +4,7 @@ import { shallowMount } from '@vue/test-utils';
import IssueMilestone from '~/vue_shared/components/issue/issue_milestone.vue';
import Icon from '~/vue_shared/components/icon.vue';
-import { mockMilestone } from '../../../../javascripts/boards/mock_data';
+import { mockMilestone } from 'jest/boards/mock_data';
const createComponent = (milestone = mockMilestone) => {
const Component = Vue.extend(IssueMilestone);