diff --git a/test/api/v3/integration/groups/POST-groups_id_removeMember.test.js b/test/api/v3/integration/groups/POST-groups_id_removeMember.test.js index 0ebde39361..9b197766b1 100644 --- a/test/api/v3/integration/groups/POST-groups_id_removeMember.test.js +++ b/test/api/v3/integration/groups/POST-groups_id_removeMember.test.js @@ -120,11 +120,13 @@ describe('POST /groups/:groupId/removeMember/:memberId', () => { }); it('can remove other invites', async () => { + expect(partyInvitedUser.invitations.party).to.not.be.empty; + await partyleader.post(`/groups/${party._id}/removeMember/${partyInvitedUser._id}`); let invitedUserWithoutInvite = await partyInvitedUser.get('/user'); - expect(_.findIndex(invitedUserWithoutInvite.invitations.party, {id: party._id})).eql(-1); + expect(invitedUserWithoutInvite.invitations.party).to.be.empty; }); }); }); diff --git a/test/helpers/api-integration/v3/object-generators.js b/test/helpers/api-integration/v3/object-generators.js index f257c3543f..501bda6cdc 100644 --- a/test/helpers/api-integration/v3/object-generators.js +++ b/test/helpers/api-integration/v3/object-generators.js @@ -128,6 +128,10 @@ export async function createAndPopulateGroup (settings = {}) { await Bluebird.all(invitationPromises); + await Bluebird.all(invitees.map((invitee) => { + return invitee.sync(); + })); + return { groupLeader, group, diff --git a/website/server/controllers/api-v3/groups.js b/website/server/controllers/api-v3/groups.js index 1c03d71f35..e3fe3708b4 100644 --- a/website/server/controllers/api-v3/groups.js +++ b/website/server/controllers/api-v3/groups.js @@ -466,8 +466,8 @@ api.removeGroupMember = { removeFromArray(member.invitations.guilds, { id: group._id }); } if (isInvited === 'party') { - user.invitations.party = {}; - user.markModified('invitations.party'); + member.invitations.party = {}; + member.markModified('invitations.party'); } } else { throw new NotFound(res.t('groupMemberNotFound')); @@ -514,6 +514,7 @@ async function _inviteByUUID (uuid, group, inviter, req, res) { } userToInvite.invitations.party = {id: group._id, name: group.name, inviter: inviter._id}; + return userToInvite.save(); } let groupLabel = group.type === 'guild' ? 'Guild' : 'Party';