mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 06:37:23 +01:00
72 lines
2.4 KiB
JavaScript
72 lines
2.4 KiB
JavaScript
var Group, app, diff;
|
|
|
|
diff = require("deep-diff");
|
|
|
|
Group = require("../../website/src/models/group").model;
|
|
|
|
app = require("../../website/src/server");
|
|
|
|
describe("Chat", function() {
|
|
var chat, group;
|
|
group = void 0;
|
|
before(function(done) {
|
|
return async.waterfall([
|
|
function(cb) {
|
|
return registerNewUser(cb, true);
|
|
}, function(user, cb) {
|
|
return request.post(baseURL + "/groups").send({
|
|
name: "TestGroup",
|
|
type: "party"
|
|
}).end(function(err, res) {
|
|
expectCode(res, 200);
|
|
group = res.body;
|
|
expect(group.members.length).to.equal(1);
|
|
expect(group.leader).to.equal(user._id);
|
|
return cb();
|
|
});
|
|
}
|
|
], done);
|
|
});
|
|
chat = void 0;
|
|
return it("removes a user's chat notifications when user is kicked", function(done) {
|
|
var userToRemove;
|
|
userToRemove = null;
|
|
return async.waterfall([
|
|
function(cb) {
|
|
return registerManyUsers(1, cb);
|
|
}, function(members, cb) {
|
|
userToRemove = members[0];
|
|
return request.post(baseURL + "/groups/" + group._id + "/invite").send({
|
|
uuids: [userToRemove._id]
|
|
}).end(function() {
|
|
return cb();
|
|
});
|
|
}, function(cb) {
|
|
return request.post(baseURL + "/groups/" + group._id + "/join").set("X-API-User", userToRemove._id).set("X-API-Key", userToRemove.apiToken).end(function(err, res) {
|
|
return cb();
|
|
});
|
|
}, function(cb) {
|
|
var msg;
|
|
msg = "TestMsg";
|
|
return request.post(baseURL + "/groups/" + group._id + "/chat?message=" + msg).end(function(err, res) {
|
|
return cb();
|
|
});
|
|
}, function(cb) {
|
|
return request.get(baseURL + "/user").set("X-API-User", userToRemove._id).set("X-API-Key", userToRemove.apiToken).end(function(err, res) {
|
|
expect(res.body.newMessages[group._id]).to.exist;
|
|
return cb();
|
|
});
|
|
}, function(cb) {
|
|
return request.post(baseURL + "/groups/" + group._id + "/removeMember?uuid=" + userToRemove._id).end(function(err, res) {
|
|
return cb();
|
|
});
|
|
}, function(cb) {
|
|
return request.get(baseURL + "/user").set("X-API-User", userToRemove._id).set("X-API-Key", userToRemove.apiToken).end(function(err, res) {
|
|
expect(res.body.newMessages[group._id]).to.not.exist;
|
|
return cb();
|
|
});
|
|
}
|
|
], done);
|
|
});
|
|
});
|