Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-04-15 12:09:03 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-04-15 12:09:03 +0300
commit73ff43129b98d433923d144fccd2e47c33c3b091 (patch)
tree8dc7ffe90e38bb0699c3ff48f1d89b1b354e8ef3 /spec/frontend/members
parent17e561ffb82d134ccdee8dfb505d9cba7c311a4c (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/members')
-rw-r--r--spec/frontend/members/components/action_buttons/remove_member_button_spec.js2
-rw-r--r--spec/frontend/members/components/action_buttons/user_action_buttons_spec.js8
-rw-r--r--spec/frontend/members/components/modals/leave_modal_spec.js26
-rw-r--r--spec/frontend/members/mock_data.js1
4 files changed, 32 insertions, 5 deletions
diff --git a/spec/frontend/members/components/action_buttons/remove_member_button_spec.js b/spec/frontend/members/components/action_buttons/remove_member_button_spec.js
index bac3cd1029d..4ff12f7fa97 100644
--- a/spec/frontend/members/components/action_buttons/remove_member_button_spec.js
+++ b/spec/frontend/members/components/action_buttons/remove_member_button_spec.js
@@ -38,6 +38,7 @@ describe('RemoveMemberButton', () => {
title: 'Remove member',
isAccessRequest: true,
isInvite: true,
+ oncallSchedules: { name: 'user', schedules: [] },
...propsData,
},
directives: {
@@ -59,6 +60,7 @@ describe('RemoveMemberButton', () => {
'data-message': 'Are you sure you want to remove John Smith?',
'data-is-access-request': 'true',
'data-is-invite': 'true',
+ 'data-oncall-schedules': '{"name":"user","schedules":[]}',
'aria-label': 'Remove member',
title: 'Remove member',
icon: 'remove',
diff --git a/spec/frontend/members/components/action_buttons/user_action_buttons_spec.js b/spec/frontend/members/components/action_buttons/user_action_buttons_spec.js
index 2f13c436fd9..0aa3780f030 100644
--- a/spec/frontend/members/components/action_buttons/user_action_buttons_spec.js
+++ b/spec/frontend/members/components/action_buttons/user_action_buttons_spec.js
@@ -40,11 +40,15 @@ describe('UserActionButtons', () => {
expect(findRemoveMemberButton().props()).toEqual({
memberId: member.id,
memberType: 'GroupMember',
- message: `Are you sure you want to remove ${member.user.name} from "${member.source.fullName}"`,
+ message: `Are you sure you want to remove ${member.user.name} from "${member.source.fullName}"?`,
title: 'Remove member',
isAccessRequest: false,
isInvite: false,
icon: 'remove',
+ oncallSchedules: {
+ name: member.user.name,
+ schedules: member.user.oncallSchedules,
+ },
});
});
@@ -58,7 +62,7 @@ describe('UserActionButtons', () => {
});
expect(findRemoveMemberButton().props('message')).toBe(
- `Are you sure you want to remove this orphaned member from "${orphanedMember.source.fullName}"`,
+ `Are you sure you want to remove this orphaned member from "${orphanedMember.source.fullName}"?`,
);
});
});
diff --git a/spec/frontend/members/components/modals/leave_modal_spec.js b/spec/frontend/members/components/modals/leave_modal_spec.js
index 824e169f096..ea9eb7bf923 100644
--- a/spec/frontend/members/components/modals/leave_modal_spec.js
+++ b/spec/frontend/members/components/modals/leave_modal_spec.js
@@ -1,10 +1,12 @@
import { GlModal, GlForm } from '@gitlab/ui';
import { within } from '@testing-library/dom';
import { mount, createLocalVue, createWrapper } from '@vue/test-utils';
+import { cloneDeep } from 'lodash';
import { nextTick } from 'vue';
import Vuex from 'vuex';
import LeaveModal from '~/members/components/modals/leave_modal.vue';
import { LEAVE_MODAL_ID, MEMBER_TYPES } from '~/members/constants';
+import OncallSchedulesList from '~/vue_shared/components/oncall_schedules_list.vue';
import { member } from '../../mock_data';
jest.mock('~/lib/utils/csrf', () => ({ token: 'mock-csrf-token' }));
@@ -47,9 +49,9 @@ describe('LeaveModal', () => {
});
};
- const findModal = () => wrapper.find(GlModal);
-
- const findForm = () => findModal().find(GlForm);
+ const findModal = () => wrapper.findComponent(GlModal);
+ const findForm = () => findModal().findComponent(GlForm);
+ const findOncallSchedulesList = () => findModal().findComponent(OncallSchedulesList);
const getByText = (text, options) =>
createWrapper(within(findModal().element).getByText(text, options));
@@ -87,6 +89,24 @@ describe('LeaveModal', () => {
);
});
+ describe('On-call schedules list', () => {
+ it("displays oncall schedules list when member's user is part of on-call schedules ", () => {
+ const schedulesList = findOncallSchedulesList();
+ expect(schedulesList.exists()).toBe(true);
+ expect(schedulesList.props()).toMatchObject({
+ isCurrentUser: true,
+ schedules: member.user.oncallSchedules,
+ });
+ });
+
+ it("does NOT display oncall schedules list when member's user is NOT a part of on-call schedules ", () => {
+ const memberWithoutOncallSchedules = cloneDeep(member);
+ delete (memberWithoutOncallSchedules, 'user.oncallSchedules');
+ createComponent({ member: memberWithoutOncallSchedules });
+ expect(findOncallSchedulesList().exists()).toBe(false);
+ });
+ });
+
it('submits the form when "Leave" button is clicked', () => {
const submitSpy = jest.spyOn(findForm().element, 'submit');
diff --git a/spec/frontend/members/mock_data.js b/spec/frontend/members/mock_data.js
index 5a2c6d560c0..a47b7ab2118 100644
--- a/spec/frontend/members/mock_data.js
+++ b/spec/frontend/members/mock_data.js
@@ -20,6 +20,7 @@ export const member = {
avatarUrl: 'https://www.gravatar.com/avatar/4816142ef496f956a277bedf1a40607b?s=80&d=identicon',
blocked: false,
twoFactorEnabled: false,
+ oncallSchedules: [{ name: 'schedule 1' }],
},
id: 238,
createdAt: '2020-07-17T16:22:46.923Z',