Commit 45a450aa authored by Miguel Rincon's avatar Miguel Rincon

Merge branch 'remediation-solution-text-update' into 'master'

Update Solution Card Text

See merge request gitlab-org/gitlab!48678
parents 116cd1d7 494e5772
......@@ -24,7 +24,7 @@ export default {
},
computed: {
solutionText() {
return (this.remediation && this.remediation.summary) || this.solution;
return this.solution || (this.remediation && this.remediation.summary);
},
showCreateMergeRequestMsg() {
return !this.hasMr && Boolean(this.remediation) && this.hasDownload;
......
......@@ -33,7 +33,7 @@ export default {
},
computed: {
solutionText() {
return (this.remediation && this.remediation.summary) || this.solution;
return this.solution || (this.remediation && this.remediation.summary);
},
showCreateMergeRequestMsg() {
return !this.hasMr && Boolean(this.remediation) && this.hasDownload;
......
---
title: Change Auto Remediation Text from Remediation Summary to Solution
merge_request: 48678
author:
type: changed
......@@ -38,10 +38,24 @@ describe('Solution Card', () => {
createComponent({ propsData: { remediation, hasRemediation: true } });
});
it('renders the solution text', () => {
it('renders the remediation summary', () => {
expect(findSolutionText().text()).toBe(remediation.summary);
});
describe('with remediation and solution', () => {
beforeEach(async () => {
await wrapper.setProps({ solution });
});
it('renders the solution title', () => {
expect(findSolutionTitle().text()).toBe('Solution');
});
it('takes the value of solution, if both are defined', () => {
expect(findSolutionText().text()).toBe(solution);
});
});
describe('with download patch', () => {
beforeEach(() => {
wrapper.setProps({ hasDownload: true });
......
import { shallowMount } from '@vue/test-utils';
import Vue from 'vue';
import component from 'ee/vue_shared/security_reports/components/solution_card_vuex.vue';
import { trimText } from 'helpers/text_helper';
import { s__ } from '~/locale';
describe('Solution Card', () => {
......@@ -20,22 +19,21 @@ describe('Solution Card', () => {
it('takes the value of solution', () => {
const propsData = { solution };
wrapper = shallowMount(Component, { propsData });
expect(wrapper.vm.solutionText).toEqual(solution);
expect(wrapper.find('.card-body').text()).toMatchInterpolatedText(`Solution: ${solution}`);
});
it('takes the summary from a remediation', () => {
const propsData = { remediation };
wrapper = shallowMount(Component, { propsData });
expect(wrapper.vm.solutionText).toEqual(remediation.summary);
expect(wrapper.find('.card-body').text()).toMatchInterpolatedText(
`Solution: ${remediation.summary}`,
);
});
it('takes the summary from a remediation, if both are defined', () => {
it('takes the value of solution, if both are defined', () => {
const propsData = { remediation, solution };
wrapper = shallowMount(Component, { propsData });
expect(wrapper.vm.solutionText).toEqual(remediation.summary);
expect(wrapper.find('.card-body').text()).toMatchInterpolatedText(`Solution: ${solution}`);
});
});
});
......@@ -48,7 +46,7 @@ describe('Solution Card', () => {
});
it('renders the solution text and label', () => {
expect(trimText(wrapper.find('.card-body').text())).toContain(`Solution: ${solution}`);
expect(wrapper.find('.card-body').text()).toMatchInterpolatedText(`Solution: ${solution}`);
});
it('does not render the card footer', () => {
......@@ -67,7 +65,7 @@ describe('Solution Card', () => {
});
it('renders the solution text and label', () => {
expect(trimText(wrapper.find('.card-body').text())).toContain(
expect(wrapper.find('.card-body').text()).toMatchInterpolatedText(
`Solution: ${remediation.summary}`,
);
});
......@@ -86,7 +84,7 @@ describe('Solution Card', () => {
});
it('renders the create a merge request to implement this solution message', () => {
expect(wrapper.find('.card-footer').text()).toContain(
expect(wrapper.find('.card-footer').text()).toMatch(
s__(
'ciReport|Create a merge request to implement this solution, or download and apply the patch manually.',
),
......
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