Commit 3f38ea4f authored by Axel García's avatar Axel García

Refactor documentation links for SP disabled

Changelog: other
MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/67384
EE: true
parent cdc32a72
<script> <script>
import { GlEmptyState, GlSprintf, GlLink, GlButton } from '@gitlab/ui'; import { GlEmptyState, GlSprintf, GlLink, GlButton } from '@gitlab/ui';
import { helpPagePath } from '~/helpers/help_page_helper';
export default { export default {
components: { components: {
...@@ -15,13 +16,11 @@ export default { ...@@ -15,13 +16,11 @@ export default {
svgPath: { svgPath: {
default: '', default: '',
}, },
docsLink: {
default: '',
},
primaryButtonPath: { primaryButtonPath: {
default: '', default: '',
}, },
}, },
docsLink: helpPagePath('development/service_ping/index.md'),
}; };
</script> </script>
<template> <template>
...@@ -36,7 +35,7 @@ export default { ...@@ -36,7 +35,7 @@ export default {
" "
> >
<template #docLink="{ content }"> <template #docLink="{ content }">
<gl-link :href="docsLink" target="_blank" data-testid="docs-link">{{ content }}</gl-link> <gl-link :href="$options.docsLink" target="_blank">{{ content }}</gl-link>
</template> </template>
</gl-sprintf> </gl-sprintf>
<template v-else> <template v-else>
...@@ -44,12 +43,7 @@ export default { ...@@ -44,12 +43,7 @@ export default {
{{ s__('ServicePing|Turn on service ping to review instance-level analytics.') }} {{ s__('ServicePing|Turn on service ping to review instance-level analytics.') }}
</p> </p>
<gl-button <gl-button category="primary" variant="success" :href="primaryButtonPath">
category="primary"
variant="success"
:href="primaryButtonPath"
data-testid="power-on-button"
>
{{ s__('ServicePing|Turn on service ping') }} {{ s__('ServicePing|Turn on service ping') }}
</gl-button> </gl-button>
</template> </template>
......
...@@ -11,12 +11,7 @@ export default () => { ...@@ -11,12 +11,7 @@ export default () => {
if (!emptyStateContainer) return false; if (!emptyStateContainer) return false;
const { const { isAdmin, emptyStateSvgPath, enableServicePingPath } = emptyStateContainer.dataset;
isAdmin,
emptyStateSvgPath,
enableServicePingPath,
docsLink,
} = emptyStateContainer.dataset;
return new Vue({ return new Vue({
el: emptyStateContainer, el: emptyStateContainer,
...@@ -24,7 +19,6 @@ export default () => { ...@@ -24,7 +19,6 @@ export default () => {
isAdmin: parseBoolean(isAdmin), isAdmin: parseBoolean(isAdmin),
svgPath: emptyStateSvgPath, svgPath: emptyStateSvgPath,
primaryButtonPath: enableServicePingPath, primaryButtonPath: enableServicePingPath,
docsLink,
}, },
render(h) { render(h) {
return h(ServicePingDisabled); return h(ServicePingDisabled);
......
...@@ -4,6 +4,6 @@ ...@@ -4,6 +4,6 @@
= _('DevOps Report') = _('DevOps Report')
- if !service_ping_enabled - if !service_ping_enabled
#js-devops-service-ping-disabled{ data: { is_admin: current_user&.admin.to_s, empty_state_svg_path: image_path('illustrations/convdev/convdev_no_index.svg'), enable_service_ping_path: metrics_and_profiling_admin_application_settings_path(anchor: 'js-usage-settings'), docs_link: help_page_path('development/service_ping/index.md') } } #js-devops-service-ping-disabled{ data: { is_admin: current_user&.admin.to_s, empty_state_svg_path: image_path('illustrations/convdev/convdev_no_index.svg'), enable_service_ping_path: metrics_and_profiling_admin_application_settings_path(anchor: 'js-usage-settings') } }
- else - else
.js-devops-adoption{ data: { empty_state_svg_path: image_path('illustrations/monitoring/getting_started.svg'), devops_score_metrics: devops_score_metrics(@metric).to_json, devops_report_docs_path: help_page_path('user/admin_area/analytics/dev_ops_report'), no_data_image_path: image_path('dev_ops_report_no_data.svg'), devops_score_intro_image_path: image_path('dev_ops_report_overview.svg') } } .js-devops-adoption{ data: { empty_state_svg_path: image_path('illustrations/monitoring/getting_started.svg'), devops_score_metrics: devops_score_metrics(@metric).to_json, devops_report_docs_path: help_page_path('user/admin_area/analytics/dev_ops_report'), no_data_image_path: image_path('dev_ops_report_no_data.svg'), devops_score_intro_image_path: image_path('dev_ops_report_overview.svg') } }
import { GlEmptyState, GlSprintf } from '@gitlab/ui'; import { GlEmptyState, GlSprintf } from '@gitlab/ui';
import { TEST_HOST } from 'helpers/test_constants'; import { TEST_HOST } from 'helpers/test_constants';
import { shallowMountExtended } from 'helpers/vue_test_utils_helper'; import { mountExtended } from 'helpers/vue_test_utils_helper';
import ServicePingDisabled from '~/analytics/devops_report/components/service_ping_disabled.vue'; import ServicePingDisabled from '~/analytics/devops_report/components/service_ping_disabled.vue';
describe('~/analytics/devops_report/components/service_ping_disabled.vue', () => { describe('~/analytics/devops_report/components/service_ping_disabled.vue', () => {
...@@ -11,21 +11,19 @@ describe('~/analytics/devops_report/components/service_ping_disabled.vue', () => ...@@ -11,21 +11,19 @@ describe('~/analytics/devops_report/components/service_ping_disabled.vue', () =>
}); });
const createWrapper = ({ isAdmin = false } = {}) => { const createWrapper = ({ isAdmin = false } = {}) => {
wrapper = shallowMountExtended(ServicePingDisabled, { wrapper = mountExtended(ServicePingDisabled, {
provide: { provide: {
isAdmin, isAdmin,
svgPath: TEST_HOST, svgPath: TEST_HOST,
docsLink: TEST_HOST,
primaryButtonPath: TEST_HOST, primaryButtonPath: TEST_HOST,
}, },
stubs: { GlEmptyState, GlSprintf },
}); });
}; };
const findEmptyState = () => wrapper.findComponent(GlEmptyState); const findEmptyState = () => wrapper.findComponent(GlEmptyState);
const findMessageForRegularUsers = () => wrapper.findComponent(GlSprintf); const findMessageForRegularUsers = () => wrapper.findComponent(GlSprintf);
const findDocsLink = () => wrapper.findByTestId('docs-link'); const findDocsLink = () => wrapper.findByRole('link', { name: 'service ping' });
const findPowerOnButton = () => wrapper.findByTestId('power-on-button'); const findPowerOnButton = () => wrapper.findByRole('link', { name: 'Turn on service ping' });
it('renders empty state with provided SVG path', () => { it('renders empty state with provided SVG path', () => {
createWrapper(); createWrapper();
...@@ -45,7 +43,7 @@ describe('~/analytics/devops_report/components/service_ping_disabled.vue', () => ...@@ -45,7 +43,7 @@ describe('~/analytics/devops_report/components/service_ping_disabled.vue', () =>
it('renders docs link', () => { it('renders docs link', () => {
expect(findDocsLink().exists()).toBe(true); expect(findDocsLink().exists()).toBe(true);
expect(findDocsLink().attributes('href')).toBe(TEST_HOST); expect(findDocsLink().attributes('href')).toBe('/help/development/service_ping/index.md');
}); });
}); });
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment