diff --git a/test/api/groups/GET-groups_id.test.js b/test/api/groups/GET-groups_id.test.js index efdaadb88e..982fb3ccd0 100644 --- a/test/api/groups/GET-groups_id.test.js +++ b/test/api/groups/GET-groups_id.test.js @@ -146,7 +146,10 @@ describe('GET /groups/:id', () => { it('does not return the group object for a non-member', () => { let api = requester(nonMember); return expect(api.get(`/groups/${createdGroup._id}`)) - .to.be.rejectedWith('Group not found or you don\'t have access.'); + .to.eventually.be.rejected.and.eql({ + code: 404, + text: 'Group not found or you don\'t have access.', + }); }); }); @@ -173,7 +176,10 @@ describe('GET /groups/:id', () => { it('does not return the group object for a non-member', () => { let api = requester(nonMember); return expect(api.get(`/groups/${createdGroup._id}`)) - .to.be.rejectedWith('Group not found or you don\'t have access.'); + .to.eventually.be.rejected.and.eql({ + code: 404, + text: 'Group not found or you don\'t have access.', + }); }); }); @@ -219,7 +225,10 @@ describe('GET /groups/:id', () => { it('returns error if group does not exist', () => { let api = requester(user); return expect(api.get('/groups/group-that-does-not-exist')) - .to.be.rejectedWith('Group not found or you don\'t have access.'); + .to.eventually.be.rejected.and.eql({ + code: 404, + text: 'Group not found or you don\'t have access.', + }); }); }); }); diff --git a/test/api/groups/POST-groups.test.js b/test/api/groups/POST-groups.test.js index ce732a0080..7597cd9beb 100644 --- a/test/api/groups/POST-groups.test.js +++ b/test/api/groups/POST-groups.test.js @@ -80,14 +80,20 @@ describe('POST /groups', () => { return api.post('/groups', { type: 'party', }); - })).to.be.rejectedWith('Already in a party, try refreshing.'); + })).to.eventually.be.rejected.and.eql({ + code: 400, + text: 'Already in a party, try refreshing.', + }); }) xit('prevents creating a public party. TODO: it is possible to create a public party. Should we send back an error? Automatically switch the privacy to private?', () => { return expect(api.post('/groups', { type: 'party', privacy: 'public', - })).to.be.rejectedWith('Parties must be private'); + })).to.eventually.be.rejected.and.eql({ + code: 400, + text: 'Parties must be private', + }); }); }); @@ -111,7 +117,10 @@ describe('POST /groups', () => { return api.post('/groups', { type: 'guild', }); - })).to.be.rejectedWith('Not enough gems!'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'Not enough gems!', + }); }); diff --git a/test/api/groups/POST-groups_id.test.js b/test/api/groups/POST-groups_id.test.js index 3f441387da..279ad76edf 100644 --- a/test/api/groups/POST-groups_id.test.js +++ b/test/api/groups/POST-groups_id.test.js @@ -32,7 +32,10 @@ describe('POST /groups/:id', () => { it('does not allow user to update group', () => { return expect(api.post(`/groups/${groupUserDoesNotOwn._id}`, { name: 'Change' - })).to.be.rejectedWith('Only the group leader can update the group!'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'Only the group leader can update the group!', + }); }); }); diff --git a/test/api/groups/POST-groups_id_leave.test.js b/test/api/groups/POST-groups_id_leave.test.js index 70635e7017..2a6fad1686 100644 --- a/test/api/groups/POST-groups_id_leave.test.js +++ b/test/api/groups/POST-groups_id_leave.test.js @@ -86,7 +86,10 @@ describe('POST /groups/:id/leave', () => { it('group is not accessible after leaving', () => { return expect(api.post(`/groups/${group._id}/leave`).then((result) => { return api.get(`/groups/${group._id}`); - })).to.be.rejectedWith('Group not found or you don\'t have access.'); + })).to.eventually.be.rejected.and.eql({ + code: 404, + text: 'Group not found or you don\'t have access.', + }); }); }); diff --git a/test/api/groups/POST-groups_id_removeMember.test.js b/test/api/groups/POST-groups_id_removeMember.test.js index 72424b5a2b..8e27aedd74 100644 --- a/test/api/groups/POST-groups_id_removeMember.test.js +++ b/test/api/groups/POST-groups_id_removeMember.test.js @@ -38,7 +38,10 @@ describe('POST /groups/:id/removeMember', () => { it('does not allow leader to remove themselves', () => { return expect(api.post(`/groups/${group._id}/removeMember`, null, { uuid: leader._id, - })).to.be.rejectedWith('You cannot remove yourself!'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'You cannot remove yourself!', + }); }); it('can remove other members of guild', () => { diff --git a/test/api/register/POST-register.test.js b/test/api/register/POST-register.test.js index ab729c4116..0f003f6357 100644 --- a/test/api/register/POST-register.test.js +++ b/test/api/register/POST-register.test.js @@ -37,7 +37,10 @@ describe('POST /register', () => { email: email, password: password, confirmPassword: confirmPassword, - })).to.be.rejectedWith(':password and :confirmPassword don\'t match'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: ':password and :confirmPassword don\'t match', + }); }); }); @@ -63,7 +66,10 @@ describe('POST /register', () => { email: uniqueEmail, password: password, confirmPassword: password, - })).to.be.rejectedWith('Username already taken'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'Username already taken', + }); }); it('rejects if email is already taken', () => { @@ -76,7 +82,10 @@ describe('POST /register', () => { email: email, password: password, confirmPassword: password, - })).to.be.rejectedWith('Email already taken'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'Email already taken', + }); }); }); }); diff --git a/test/api/user/DELETE-user.test.js b/test/api/user/DELETE-user.test.js index ba4cfcfdf9..153dfc4c3e 100644 --- a/test/api/user/DELETE-user.test.js +++ b/test/api/user/DELETE-user.test.js @@ -15,7 +15,10 @@ describe('DELETE /user', () => { it('deletes the user', () => { return expect(api.del('/user').then((fetchedUser) => { return api.get('/user'); - })).to.be.rejectedWith('No user found.'); + })).to.eventually.be.rejected.and.eql({ + code: 401, + text: 'No user found.', + }); }); context('user in solo group', () => { diff --git a/test/helpers/api.helper.js b/test/helpers/api.helper.js index e169698e55..01afef66f1 100644 --- a/test/helpers/api.helper.js +++ b/test/helpers/api.helper.js @@ -188,7 +188,10 @@ function _requestMaker(user, method) { if (err) { if (!err.response) return reject(err); let errorString = JSON.parse(err.response.text).err; - return reject(errorString); + return reject({ + code: err.response.statusCode, + text: errorString, + }); } resolve(response.body);