diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-20 14:34:42 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-20 14:34:42 +0000 |
commit | 9f46488805e86b1bc341ea1620b866016c2ce5ed (patch) | |
tree | f9748c7e287041e37d6da49e0a29c9511dc34768 /spec/frontend/reports/accessibility_report/store/getters_spec.js | |
parent | dfc92d081ea0332d69c8aca2f0e745cb48ae5e6d (diff) | |
download | gitlab-ce-9f46488805e86b1bc341ea1620b866016c2ce5ed.tar.gz |
Add latest changes from gitlab-org/gitlab@13-0-stable-ee
Diffstat (limited to 'spec/frontend/reports/accessibility_report/store/getters_spec.js')
-rw-r--r-- | spec/frontend/reports/accessibility_report/store/getters_spec.js | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/spec/frontend/reports/accessibility_report/store/getters_spec.js b/spec/frontend/reports/accessibility_report/store/getters_spec.js new file mode 100644 index 00000000000..d74c71cfa09 --- /dev/null +++ b/spec/frontend/reports/accessibility_report/store/getters_spec.js @@ -0,0 +1,149 @@ +import * as getters from '~/reports/accessibility_report/store/getters'; +import createStore from '~/reports/accessibility_report/store'; +import { LOADING, ERROR, SUCCESS, STATUS_FAILED } from '~/reports/constants'; + +describe('Accessibility reports store getters', () => { + let localState; + let localStore; + + beforeEach(() => { + localStore = createStore(); + localState = localStore.state; + }); + + describe('summaryStatus', () => { + describe('when summary is loading', () => { + it('returns loading status', () => { + localState.isLoading = true; + + expect(getters.summaryStatus(localState)).toEqual(LOADING); + }); + }); + + describe('when summary has error', () => { + it('returns error status', () => { + localState.hasError = true; + + expect(getters.summaryStatus(localState)).toEqual(ERROR); + }); + }); + + describe('when summary has failed status', () => { + it('returns loading status', () => { + localState.status = STATUS_FAILED; + + expect(getters.summaryStatus(localState)).toEqual(ERROR); + }); + }); + + describe('when summary has successfully loaded', () => { + it('returns loading status', () => { + expect(getters.summaryStatus(localState)).toEqual(SUCCESS); + }); + }); + }); + + describe('groupedSummaryText', () => { + describe('when state is loading', () => { + it('returns the loading summary message', () => { + localState.isLoading = true; + const result = 'Accessibility scanning results are being parsed'; + + expect(getters.groupedSummaryText(localState)).toEqual(result); + }); + }); + + describe('when state has error', () => { + it('returns the error summary message', () => { + localState.hasError = true; + const result = 'Accessibility scanning failed loading results'; + + expect(getters.groupedSummaryText(localState)).toEqual(result); + }); + }); + + describe('when state has successfully loaded', () => { + describe('when report has errors', () => { + it('returns summary message containing number of errors', () => { + localState.report = { + summary: { + errored: 2, + }, + }; + const result = 'Accessibility scanning detected 2 issues for the source branch only'; + + expect(getters.groupedSummaryText(localState)).toEqual(result); + }); + }); + + describe('when report has no errors', () => { + it('returns summary message containing no errors', () => { + localState.report = { + summary: { + errored: 0, + }, + }; + const result = 'Accessibility scanning detected no issues for the source branch only'; + + expect(getters.groupedSummaryText(localState)).toEqual(result); + }); + }); + }); + }); + + describe('shouldRenderIssuesList', () => { + describe('when has issues to render', () => { + it('returns true', () => { + localState.report = { + existing_errors: [{ name: 'Issue' }], + }; + + expect(getters.shouldRenderIssuesList(localState)).toEqual(true); + }); + }); + + describe('when does not have issues to render', () => { + it('returns false', () => { + localState.report = { + status: 'success', + summary: { errored: 0 }, + }; + + expect(getters.shouldRenderIssuesList(localState)).toEqual(false); + }); + }); + }); + + describe('unresolvedIssues', () => { + it('returns the array unresolved errors', () => { + localState.report = { + existing_errors: [1], + }; + const result = [1]; + + expect(getters.unresolvedIssues(localState)).toEqual(result); + }); + }); + + describe('resolvedIssues', () => { + it('returns array of resolved errors', () => { + localState.report = { + resolved_errors: [1], + }; + const result = [1]; + + expect(getters.resolvedIssues(localState)).toEqual(result); + }); + }); + + describe('newIssues', () => { + it('returns array of new errors', () => { + localState.report = { + new_errors: [1], + }; + const result = [1]; + + expect(getters.newIssues(localState)).toEqual(result); + }); + }); +}); |