tests(api): Convert tests to use new api user methods

This commit is contained in:
Blade Barringer
2015-12-29 17:34:33 -06:00
parent b2336c7adf
commit 4cf9518a5a
28 changed files with 213 additions and 313 deletions
+20 -26
View File
@@ -2,7 +2,6 @@ import {
checkExistence,
createAndPopulateGroup,
generateUser,
requester,
translate as t,
} from '../../../helpers/api-integration.helper';
import { find } from 'lodash';
@@ -14,7 +13,7 @@ describe('POST /groups/:id/leave', () => {
});
context('user is a non-leader member of a guild', () => {
let api, user, group;
let user, group;
beforeEach(() => {
return createAndPopulateGroup({
@@ -26,14 +25,13 @@ describe('POST /groups/:id/leave', () => {
},
}).then((res) => {
user = res.members[0];
api = requester(user);
group = res.group;
});
});
it('leaves the group', () => {
return api.post(`/groups/${group._id}/leave`).then((result) => {
return api.get(`/groups/${group._id}`);
return user.post(`/groups/${group._id}/leave`).then((result) => {
return user.get(`/groups/${group._id}`);
}).then((group) => {
let userInGroup = find(group.members, (member) => {
return member._id === user._id;
@@ -44,7 +42,7 @@ describe('POST /groups/:id/leave', () => {
});
context('user is the last member of a public guild', () => {
let api, user, group;
let user, group;
beforeEach(() => {
return createAndPopulateGroup({
@@ -55,20 +53,19 @@ describe('POST /groups/:id/leave', () => {
},
}).then((res) => {
user = res.leader;
api = requester(user);
group = res.group;
});
});
it('leaves the group accessible', () => {
return expect(api.post(`/groups/${group._id}/leave`).then((result) => {
return api.get(`/groups/${group._id}`);
return expect(user.post(`/groups/${group._id}/leave`).then((result) => {
return user.get(`/groups/${group._id}`);
})).to.eventually.have.property('_id', group._id);
});
});
context('user is the last member of a private group', () => {
let api, user, group;
let user, group;
beforeEach(() => {
return createAndPopulateGroup({
@@ -79,20 +76,19 @@ describe('POST /groups/:id/leave', () => {
},
}).then((res) => {
user = res.leader;
api = requester(user);
group = res.group;
});
});
it('group is deleted', () => {
return expect(api.post(`/groups/${group._id}/leave`).then((result) => {
return expect(user.post(`/groups/${group._id}/leave`).then((result) => {
return checkExistence('groups', group._id);
})).to.eventually.eql(false);
});
});
context('user is the last member of a private group with pending invites', () => {
let api, user, inviteeRequest1, inviteeRequest2, group;
let user, invitee1, invitee2, group;
beforeEach(() => {
return createAndPopulateGroup({
@@ -104,20 +100,19 @@ describe('POST /groups/:id/leave', () => {
},
}).then((res) => {
user = res.leader;
inviteeRequest1 = requester(res.invitees[0]);
inviteeRequest2 = requester(res.invitees[1]);
api = requester(user);
invitee1 = res.invitees[0];
invitee2 = res.invitees[1];
group = res.group;
});
});
it('deletes the group invitations from users', () => {
return api.post(`/groups/${group._id}/leave`).then((result) => {
return user.post(`/groups/${group._id}/leave`).then((result) => {
return Promise.all([
expect(inviteeRequest1.get(`/user`))
expect(invitee1.get(`/user`))
.to.eventually.have.deep.property('invitations.guilds')
.and.to.be.empty,
expect(inviteeRequest2.get(`/user`))
expect(invitee2.get(`/user`))
.to.eventually.have.deep.property('invitations.guilds')
.and.to.be.empty,
]);
@@ -126,7 +121,7 @@ describe('POST /groups/:id/leave', () => {
});
context('user is the last member of a party with pending invites', () => {
let api, user, inviteeRequest1, inviteeRequest2, group;
let user, invitee1, invitee2, group;
beforeEach(() => {
return createAndPopulateGroup({
@@ -138,20 +133,19 @@ describe('POST /groups/:id/leave', () => {
},
}).then((res) => {
user = res.leader;
inviteeRequest1 = requester(res.invitees[0]);
inviteeRequest2 = requester(res.invitees[1]);
api = requester(user);
invitee1 = res.invitees[0];
invitee2 = res.invitees[1];
group = res.group;
});
});
it('deletes the group invitations from users', () => {
return api.post(`/groups/${group._id}/leave`).then((result) => {
return user.post(`/groups/${group._id}/leave`).then((result) => {
return Promise.all([
expect(inviteeRequest1.get(`/user`))
expect(invitee1.get(`/user`))
.to.eventually.have.deep.property('invitations.party')
.and.to.be.empty,
expect(inviteeRequest2.get(`/user`))
expect(invitee2.get(`/user`))
.to.eventually.have.deep.property('invitations.party')
.and.to.be.empty,
]);