Port groups /leave tests to new integration tests.
This commit is contained in:
@@ -6,134 +6,6 @@ Group = require("../../website/src/models/group").model
|
||||
app = require("../../website/src/server")
|
||||
|
||||
describe.skip "Guilds", ->
|
||||
context "leaving groups", ->
|
||||
it "can leave a guild", (done) ->
|
||||
guildToLeave = undefined
|
||||
request.post(baseURL + "/groups").send(
|
||||
name: "TestGroupToLeave"
|
||||
type: "guild"
|
||||
).end (err, res) ->
|
||||
guildToLeave = res.body
|
||||
request.post(baseURL + "/groups/" + guildToLeave._id + "/leave")
|
||||
.send()
|
||||
.end (err, res) ->
|
||||
expectCode res, 204
|
||||
done()
|
||||
|
||||
it "deletes a group when the last member leaves", (done) ->
|
||||
groupToDeleteAfterLeave = undefined
|
||||
request.post(baseURL + "/groups").send(
|
||||
name: "TestGroupToDeleteAfteLeave"
|
||||
type: "guild"
|
||||
privacy: "private"
|
||||
).end (err, res) ->
|
||||
groupToDeleteAfterLeave = res.body
|
||||
async.waterfall [
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + groupToDeleteAfterLeave._id + "/leave")
|
||||
.end (err, res) ->
|
||||
expectCode res, 204
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + groupToDeleteAfterLeave._id)
|
||||
.end (err, res) ->
|
||||
expectCode res, 404
|
||||
cb()
|
||||
], done
|
||||
|
||||
it "deletes all invites to a group (guild) when the last member leaves", (done) ->
|
||||
groupToDeleteAfterLeave = undefined
|
||||
userToRemoveInvite = undefined
|
||||
request.post(baseURL + "/groups").send(
|
||||
name: "TestGroupToDeleteAfterLeave"
|
||||
type: "guild"
|
||||
privacy: "private"
|
||||
).end (err, res) ->
|
||||
groupToDeleteAfterLeave = res.body
|
||||
async.waterfall [
|
||||
(cb) ->
|
||||
registerManyUsers 1, cb
|
||||
|
||||
(_members, cb) ->
|
||||
userToRemoveInvite = _members[0]
|
||||
inviteURL = baseURL + "/groups/" + groupToDeleteAfterLeave._id + "/invite"
|
||||
request.post(inviteURL).send(
|
||||
uuids: [userToRemoveInvite._id]
|
||||
)
|
||||
.end ->
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + groupToDeleteAfterLeave._id + "/leave")
|
||||
.end (err, res) ->
|
||||
expectCode res, 204
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.get(baseURL + '/user')
|
||||
.set("X-API-User", userToRemoveInvite._id)
|
||||
.set("X-API-Key", userToRemoveInvite.apiToken)
|
||||
.end (err, res) ->
|
||||
expectCode res, 200
|
||||
groupInvitation = _.find(res.body.invitations.guilds, {id: groupToDeleteAfterLeave._id})
|
||||
expect(groupInvitation).to.not.exist
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + groupToDeleteAfterLeave._id)
|
||||
.end (err, res) ->
|
||||
expectCode res, 404
|
||||
cb()
|
||||
], done
|
||||
|
||||
it "deletes all invites to a group (party) when the last member leaves", (done) ->
|
||||
partyToDeleteAfterLeave = undefined
|
||||
userToRemovePartyInvite = undefined
|
||||
request.post(baseURL + "/groups").send(
|
||||
name: "TestPartyToDeleteAfterLeave"
|
||||
type: "party"
|
||||
).end (err, res) ->
|
||||
partyToDeleteAfterLeave = res.body
|
||||
async.waterfall [
|
||||
(cb) ->
|
||||
registerManyUsers 1, cb
|
||||
|
||||
(_members, cb) ->
|
||||
userToRemovePartyInvite = _members[0]
|
||||
inviteURL = baseURL + "/groups/" + partyToDeleteAfterLeave._id + "/invite"
|
||||
request.post(inviteURL).send(
|
||||
uuids: [userToRemovePartyInvite._id]
|
||||
)
|
||||
.end ->
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + partyToDeleteAfterLeave._id + "/leave")
|
||||
.end (err, res) ->
|
||||
expectCode res, 204
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.get(baseURL + '/user')
|
||||
.set("X-API-User", userToRemovePartyInvite._id)
|
||||
.set("X-API-Key", userToRemovePartyInvite.apiToken)
|
||||
.end (err, res) ->
|
||||
expectCode res, 200
|
||||
party = partyToDeleteAfterLeave
|
||||
partyInvitation = _.find(res.body.invitations.party, (invite) ->
|
||||
return invite == party._id
|
||||
)
|
||||
expect(partyInvitation).to.not.exist
|
||||
cb()
|
||||
|
||||
(cb) ->
|
||||
request.post(baseURL + "/groups/" + partyToDeleteAfterLeave._id)
|
||||
.end (err, res) ->
|
||||
expectCode res, 404
|
||||
cb()
|
||||
], done
|
||||
|
||||
context "removing users groups", ->
|
||||
it "allows guild leaders to remove a member (but not themselves)", (done) ->
|
||||
guildToRemoveMember = undefined
|
||||
|
||||
Reference in New Issue
Block a user