diff options
Diffstat (limited to 'spec/frontend/members')
-rw-r--r-- | spec/frontend/members/components/table/members_table_cell_spec.js | 20 | ||||
-rw-r--r-- | spec/frontend/members/components/table/members_table_spec.js | 7 | ||||
-rw-r--r-- | spec/frontend/members/mock_data.js | 4 | ||||
-rw-r--r-- | spec/frontend/members/utils_spec.js | 62 |
4 files changed, 44 insertions, 49 deletions
diff --git a/spec/frontend/members/components/table/members_table_cell_spec.js b/spec/frontend/members/components/table/members_table_cell_spec.js index 4e176dac725..30e6013aab2 100644 --- a/spec/frontend/members/components/table/members_table_cell_spec.js +++ b/spec/frontend/members/components/table/members_table_cell_spec.js @@ -1,7 +1,14 @@ import { mount, createLocalVue } from '@vue/test-utils'; import Vuex from 'vuex'; import { MEMBER_TYPES } from '~/members/constants'; -import { member as memberMock, group, invite, accessRequest } from '../../mock_data'; +import { + member as memberMock, + directMember, + inheritedMember, + group, + invite, + accessRequest, +} from '../../mock_data'; import MembersTableCell from '~/members/components/table/members_table_cell.vue'; describe('MembersTableCell', () => { @@ -75,19 +82,12 @@ describe('MembersTableCell', () => { const createComponentWithDirectMember = (member = {}) => { createComponent({ - member: { - ...memberMock, - source: { - ...memberMock.source, - id: 1, - }, - ...member, - }, + member: { ...directMember, ...member }, }); }; const createComponentWithInheritedMember = (member = {}) => { createComponent({ - member: { ...memberMock, ...member }, + member: { ...inheritedMember, ...member }, }); }; diff --git a/spec/frontend/members/components/table/members_table_spec.js b/spec/frontend/members/components/table/members_table_spec.js index 476d7118c46..729b65f37aa 100644 --- a/spec/frontend/members/components/table/members_table_spec.js +++ b/spec/frontend/members/components/table/members_table_spec.js @@ -15,7 +15,7 @@ import RoleDropdown from '~/members/components/table/role_dropdown.vue'; import ExpirationDatepicker from '~/members/components/table/expiration_datepicker.vue'; import MemberActionButtons from '~/members/components/table/member_action_buttons.vue'; import * as initUserPopovers from '~/user_popovers'; -import { member as memberMock, invite, accessRequest } from '../../mock_data'; +import { member as memberMock, directMember, invite, accessRequest } from '../../mock_data'; const localVue = createLocalVue(); localVue.use(Vuex); @@ -74,11 +74,6 @@ describe('MembersTable', () => { }); describe('fields', () => { - const directMember = { - ...memberMock, - source: { ...memberMock.source, id: 1 }, - }; - const memberCanUpdate = { ...directMember, canUpdate: true, diff --git a/spec/frontend/members/mock_data.js b/spec/frontend/members/mock_data.js index 5c00745a590..fa324ce1cf9 100644 --- a/spec/frontend/members/mock_data.js +++ b/spec/frontend/members/mock_data.js @@ -4,6 +4,7 @@ export const member = { canRemove: false, canOverride: false, isOverridden: false, + isDirectMember: false, accessLevel: { integerValue: 50, stringValue: 'Owner' }, source: { id: 178, @@ -71,3 +72,6 @@ export const accessRequest = { export const members = [member]; export const membersJsonString = JSON.stringify(members); + +export const directMember = { ...member, isDirectMember: true }; +export const inheritedMember = { ...member, isDirectMember: false }; diff --git a/spec/frontend/members/utils_spec.js b/spec/frontend/members/utils_spec.js index f123b2c6a91..5c9484fe128 100644 --- a/spec/frontend/members/utils_spec.js +++ b/spec/frontend/members/utils_spec.js @@ -13,10 +13,16 @@ import { groupLinkRequestFormatter, } from '~/members/utils'; import { DEFAULT_SORT } from '~/members/constants'; -import { member as memberMock, group, invite, membersJsonString, members } from './mock_data'; +import { + member as memberMock, + directMember, + inheritedMember, + group, + invite, + membersJsonString, + members, +} from './mock_data'; -const DIRECT_MEMBER_ID = 178; -const INHERITED_MEMBER_ID = 179; const IS_CURRENT_USER_ID = 123; const IS_NOT_CURRENT_USER_ID = 124; const URL_HOST = 'https://localhost/'; @@ -59,11 +65,11 @@ describe('Members Utils', () => { describe('isDirectMember', () => { test.each` - sourceId | expected - ${DIRECT_MEMBER_ID} | ${true} - ${INHERITED_MEMBER_ID} | ${false} - `('returns $expected', ({ sourceId, expected }) => { - expect(isDirectMember(memberMock, sourceId)).toBe(expected); + member | expected + ${directMember} | ${true} + ${inheritedMember} | ${false} + `('returns $expected', ({ member, expected }) => { + expect(isDirectMember(member)).toBe(expected); }); }); @@ -78,18 +84,13 @@ describe('Members Utils', () => { }); describe('canRemove', () => { - const memberCanRemove = { - ...memberMock, - canRemove: true, - }; - test.each` - member | sourceId | expected - ${memberCanRemove} | ${DIRECT_MEMBER_ID} | ${true} - ${memberCanRemove} | ${INHERITED_MEMBER_ID} | ${false} - ${memberMock} | ${INHERITED_MEMBER_ID} | ${false} - `('returns $expected', ({ member, sourceId, expected }) => { - expect(canRemove(member, sourceId)).toBe(expected); + member | expected + ${{ ...directMember, canRemove: true }} | ${true} + ${{ ...inheritedMember, canRemove: true }} | ${false} + ${{ ...memberMock, canRemove: false }} | ${false} + `('returns $expected', ({ member, expected }) => { + expect(canRemove(member)).toBe(expected); }); }); @@ -98,25 +99,20 @@ describe('Members Utils', () => { member | expected ${invite} | ${true} ${{ ...invite, invite: { ...invite.invite, canResend: false } }} | ${false} - `('returns $expected', ({ member, sourceId, expected }) => { - expect(canResend(member, sourceId)).toBe(expected); + `('returns $expected', ({ member, expected }) => { + expect(canResend(member)).toBe(expected); }); }); describe('canUpdate', () => { - const memberCanUpdate = { - ...memberMock, - canUpdate: true, - }; - test.each` - member | currentUserId | sourceId | expected - ${memberCanUpdate} | ${IS_NOT_CURRENT_USER_ID} | ${DIRECT_MEMBER_ID} | ${true} - ${memberCanUpdate} | ${IS_CURRENT_USER_ID} | ${DIRECT_MEMBER_ID} | ${false} - ${memberCanUpdate} | ${IS_CURRENT_USER_ID} | ${INHERITED_MEMBER_ID} | ${false} - ${memberMock} | ${IS_NOT_CURRENT_USER_ID} | ${DIRECT_MEMBER_ID} | ${false} - `('returns $expected', ({ member, currentUserId, sourceId, expected }) => { - expect(canUpdate(member, currentUserId, sourceId)).toBe(expected); + member | currentUserId | expected + ${{ ...directMember, canUpdate: true }} | ${IS_NOT_CURRENT_USER_ID} | ${true} + ${{ ...directMember, canUpdate: true }} | ${IS_CURRENT_USER_ID} | ${false} + ${{ ...inheritedMember, canUpdate: true }} | ${IS_CURRENT_USER_ID} | ${false} + ${{ ...directMember, canUpdate: false }} | ${IS_NOT_CURRENT_USER_ID} | ${false} + `('returns $expected', ({ member, currentUserId, expected }) => { + expect(canUpdate(member, currentUserId)).toBe(expected); }); }); |