diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-07-20 12:26:25 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-07-20 12:26:25 +0000 |
commit | a09983ae35713f5a2bbb100981116d31ce99826e (patch) | |
tree | 2ee2af7bd104d57086db360a7e6d8c9d5d43667a /spec/frontend/integrations/edit/store/getters_spec.js | |
parent | 18c5ab32b738c0b6ecb4d0df3994000482f34bd8 (diff) | |
download | gitlab-ce-a09983ae35713f5a2bbb100981116d31ce99826e.tar.gz |
Add latest changes from gitlab-org/gitlab@13-2-stable-ee
Diffstat (limited to 'spec/frontend/integrations/edit/store/getters_spec.js')
-rw-r--r-- | spec/frontend/integrations/edit/store/getters_spec.js | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/spec/frontend/integrations/edit/store/getters_spec.js b/spec/frontend/integrations/edit/store/getters_spec.js new file mode 100644 index 00000000000..700d36edaad --- /dev/null +++ b/spec/frontend/integrations/edit/store/getters_spec.js @@ -0,0 +1,71 @@ +import { currentKey, isInheriting, propsSource } from '~/integrations/edit/store/getters'; +import createState from '~/integrations/edit/store/state'; +import { mockIntegrationProps } from '../mock_data'; + +describe('Integration form store getters', () => { + let state; + const customState = { ...mockIntegrationProps, type: 'CustomState' }; + const adminState = { ...mockIntegrationProps, type: 'AdminState' }; + + beforeEach(() => { + state = createState({ customState }); + }); + + describe('isInheriting', () => { + describe('when adminState is null', () => { + it('returns false', () => { + expect(isInheriting(state)).toBe(false); + }); + }); + + describe('when adminState is an object', () => { + beforeEach(() => { + state.adminState = adminState; + }); + + describe('when override is false', () => { + beforeEach(() => { + state.override = false; + }); + + it('returns false', () => { + expect(isInheriting(state)).toBe(true); + }); + }); + + describe('when override is true', () => { + beforeEach(() => { + state.override = true; + }); + + it('returns true', () => { + expect(isInheriting(state)).toBe(false); + }); + }); + }); + }); + + describe('propsSource', () => { + beforeEach(() => { + state.adminState = adminState; + }); + + it('equals adminState if inheriting', () => { + expect(propsSource(state, { isInheriting: true })).toEqual(adminState); + }); + + it('equals customState if not inheriting', () => { + expect(propsSource(state, { isInheriting: false })).toEqual(customState); + }); + }); + + describe('currentKey', () => { + it('equals `admin` if inheriting', () => { + expect(currentKey(state, { isInheriting: true })).toEqual('admin'); + }); + + it('equals `custom` if not inheriting', () => { + expect(currentKey(state, { isInheriting: false })).toEqual('custom'); + }); + }); +}); |