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>2022-05-12 09:07:53 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-12 09:07:53 +0300
commit90726a8ccc9df6d9b5ff4f5e1eb31d015c1db8e2 (patch)
treec5992348be5d8d81656ce665efd6980bfa8fbf71 /spec/frontend/vue_shared/components/user_popover
parent48d9e7ff8ddfe152686d450fa5ac511f12d42d5b (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/vue_shared/components/user_popover')
-rw-r--r--spec/frontend/vue_shared/components/user_popover/user_popover_spec.js170
1 files changed, 79 insertions, 91 deletions
diff --git a/spec/frontend/vue_shared/components/user_popover/user_popover_spec.js b/spec/frontend/vue_shared/components/user_popover/user_popover_spec.js
index 5595a44672a..20298e95107 100644
--- a/spec/frontend/vue_shared/components/user_popover/user_popover_spec.js
+++ b/spec/frontend/vue_shared/components/user_popover/user_popover_spec.js
@@ -51,9 +51,7 @@ describe('User Popover Component', () => {
const findUserLocalTime = () => wrapper.findByTestId('user-popover-local-time');
const findToggleFollowButton = () => wrapper.findByTestId('toggle-follow-button');
- const createWrapper = (props = {}, { followInUserPopover = true } = {}) => {
- gon.features.followInUserPopover = followInUserPopover;
-
+ const createWrapper = (props = {}) => {
wrapper = mountExtended(UserPopover, {
propsData: {
...DEFAULT_PROPS,
@@ -304,132 +302,122 @@ describe('User Popover Component', () => {
});
});
- describe('follow actions with `followInUserPopover` flag enabled', () => {
- describe("when current user doesn't follow the user", () => {
- beforeEach(() => createWrapper());
+ describe("when current user doesn't follow the user", () => {
+ beforeEach(() => createWrapper());
- it('renders the Follow button with the correct variant', () => {
- expect(findToggleFollowButton().text()).toBe('Follow');
- expect(findToggleFollowButton().props('variant')).toBe('confirm');
- });
+ it('renders the Follow button with the correct variant', () => {
+ expect(findToggleFollowButton().text()).toBe('Follow');
+ expect(findToggleFollowButton().props('variant')).toBe('confirm');
+ });
- describe('when clicking', () => {
- it('follows the user', async () => {
- followUser.mockResolvedValue({});
+ describe('when clicking', () => {
+ it('follows the user', async () => {
+ followUser.mockResolvedValue({});
- await findToggleFollowButton().trigger('click');
+ await findToggleFollowButton().trigger('click');
- expect(findToggleFollowButton().props('loading')).toBe(true);
+ expect(findToggleFollowButton().props('loading')).toBe(true);
- await axios.waitForAll();
+ await axios.waitForAll();
- expect(wrapper.emitted().follow.length).toBe(1);
- expect(wrapper.emitted().unfollow).toBeFalsy();
- });
+ expect(wrapper.emitted().follow.length).toBe(1);
+ expect(wrapper.emitted().unfollow).toBeFalsy();
+ });
- describe('when an error occurs', () => {
- beforeEach(() => {
- followUser.mockRejectedValue({});
+ describe('when an error occurs', () => {
+ beforeEach(() => {
+ followUser.mockRejectedValue({});
- findToggleFollowButton().trigger('click');
- });
+ findToggleFollowButton().trigger('click');
+ });
- it('shows an error message', async () => {
- await axios.waitForAll();
+ it('shows an error message', async () => {
+ await axios.waitForAll();
- expect(createFlash).toHaveBeenCalledWith({
- message: 'An error occurred while trying to follow this user, please try again.',
- error: {},
- captureError: true,
- });
+ expect(createFlash).toHaveBeenCalledWith({
+ message: 'An error occurred while trying to follow this user, please try again.',
+ error: {},
+ captureError: true,
});
+ });
- it('emits no events', async () => {
- await axios.waitForAll();
+ it('emits no events', async () => {
+ await axios.waitForAll();
- expect(wrapper.emitted().follow).toBe(undefined);
- expect(wrapper.emitted().unfollow).toBe(undefined);
- });
+ expect(wrapper.emitted().follow).toBe(undefined);
+ expect(wrapper.emitted().unfollow).toBe(undefined);
});
});
});
+ });
- describe('when current user follows the user', () => {
- beforeEach(() => createWrapper({ user: { ...DEFAULT_PROPS.user, isFollowed: true } }));
+ describe('when current user follows the user', () => {
+ beforeEach(() => createWrapper({ user: { ...DEFAULT_PROPS.user, isFollowed: true } }));
- it('renders the Unfollow button with the correct variant', () => {
- expect(findToggleFollowButton().text()).toBe('Unfollow');
- expect(findToggleFollowButton().props('variant')).toBe('default');
- });
+ it('renders the Unfollow button with the correct variant', () => {
+ expect(findToggleFollowButton().text()).toBe('Unfollow');
+ expect(findToggleFollowButton().props('variant')).toBe('default');
+ });
- describe('when clicking', () => {
- it('unfollows the user', async () => {
- unfollowUser.mockResolvedValue({});
+ describe('when clicking', () => {
+ it('unfollows the user', async () => {
+ unfollowUser.mockResolvedValue({});
- findToggleFollowButton().trigger('click');
+ findToggleFollowButton().trigger('click');
- await axios.waitForAll();
+ await axios.waitForAll();
- expect(wrapper.emitted().follow).toBe(undefined);
- expect(wrapper.emitted().unfollow.length).toBe(1);
- });
+ expect(wrapper.emitted().follow).toBe(undefined);
+ expect(wrapper.emitted().unfollow.length).toBe(1);
+ });
- describe('when an error occurs', () => {
- beforeEach(async () => {
- unfollowUser.mockRejectedValue({});
+ describe('when an error occurs', () => {
+ beforeEach(async () => {
+ unfollowUser.mockRejectedValue({});
- findToggleFollowButton().trigger('click');
+ findToggleFollowButton().trigger('click');
- await axios.waitForAll();
- });
+ await axios.waitForAll();
+ });
- it('shows an error message', () => {
- expect(createFlash).toHaveBeenCalledWith({
- message: 'An error occurred while trying to unfollow this user, please try again.',
- error: {},
- captureError: true,
- });
+ it('shows an error message', () => {
+ expect(createFlash).toHaveBeenCalledWith({
+ message: 'An error occurred while trying to unfollow this user, please try again.',
+ error: {},
+ captureError: true,
});
+ });
- it('emits no events', () => {
- expect(wrapper.emitted().follow).toBe(undefined);
- expect(wrapper.emitted().unfollow).toBe(undefined);
- });
+ it('emits no events', () => {
+ expect(wrapper.emitted().follow).toBe(undefined);
+ expect(wrapper.emitted().unfollow).toBe(undefined);
});
});
});
+ });
- describe('when the current user is the user', () => {
- beforeEach(() => {
- gon.current_username = DEFAULT_PROPS.user.username;
- createWrapper();
- });
-
- it("doesn't render the toggle follow button", () => {
- expect(findToggleFollowButton().exists()).toBe(false);
- });
+ describe('when the current user is the user', () => {
+ beforeEach(() => {
+ gon.current_username = DEFAULT_PROPS.user.username;
+ createWrapper();
});
- describe('when API does not support `isFollowed`', () => {
- beforeEach(() => {
- const user = {
- ...DEFAULT_PROPS.user,
- isFollowed: undefined,
- };
-
- createWrapper({ user });
- });
-
- it('does not render the toggle follow button', () => {
- expect(findToggleFollowButton().exists()).toBe(false);
- });
+ it("doesn't render the toggle follow button", () => {
+ expect(findToggleFollowButton().exists()).toBe(false);
});
});
- describe('follow actions with `followInUserPopover` flag disabled', () => {
- beforeEach(() => createWrapper({}, { followInUserPopover: false }));
+ describe('when API does not support `isFollowed`', () => {
+ beforeEach(() => {
+ const user = {
+ ...DEFAULT_PROPS.user,
+ isFollowed: undefined,
+ };
+
+ createWrapper({ user });
+ });
- it('doesn’t render the toggle follow button', () => {
+ it('does not render the toggle follow button', () => {
expect(findToggleFollowButton().exists()).toBe(false);
});
});