Skip to content

Commit 4282ffa

Browse files
committed
Commit changes
1 parent a87ac33 commit 4282ffa

File tree

1 file changed

+57
-27
lines changed

1 file changed

+57
-27
lines changed

test/integration/discord.test.js

Lines changed: 57 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const chai = require("chai");
22
const { expect } = chai;
3-
3+
const sinon = require("sinon");
4+
const discordService = require("../../services/discordService");
45
const app = require("../../server");
56
const addUser = require("../utils/addUser");
67
const cleanDb = require("../utils/cleanDb");
@@ -12,6 +13,10 @@ const firestore = require("../../utils/firestore");
1213
const discordRoleModel = firestore.collection("discord-roles");
1314
const userModel = firestore.collection("users");
1415

16+
const userStatusModel = require("../../models/userStatus");
17+
const { generateUserStatusData } = require("../fixtures/userStatus/userStatus");
18+
const { userState } = require("../../constants/userStatus");
19+
1520
const { addGroupRoleToMember } = require("../../models/discordactions");
1621

1722
const { groupData } = require("../fixtures/discordactions/discordactions");
@@ -63,47 +68,72 @@ describe("test discord actions", function () {
6368
});
6469

6570
describe("test discord actions for active users", function () {
71+
let getDiscordMembersStub;
72+
let userId;
73+
let jwt;
74+
6675
beforeEach(async function () {
67-
const user = { ...userData[4], discordId: "123456789" };
76+
getDiscordMembersStub = sinon.stub(discordService, "getDiscordMembers").resolves([]);
77+
78+
const user = {
79+
...userData[4],
80+
discordId: "123456789",
81+
roles: {
82+
in_discord: true,
83+
archived: false,
84+
},
85+
};
6886
userId = await addUser(user);
87+
await userStatusModel.updateUserStatus(userId, generateUserStatusData(userState.ACTIVE, Date.now(), Date.now()));
88+
6989
jwt = authService.generateAuthToken({ userId });
7090

71-
let allIds = [];
91+
const addUsersPromises = userData.map((u) => userModel.add({ ...u }));
7292

73-
const addUsersPromises = userData.map((user) => userModel.add({ ...user }));
7493
const responses = await Promise.all(addUsersPromises);
75-
allIds = responses.map((response) => response.id);
76-
77-
const addRolesPromises = [
78-
discordRoleModel.add({ roleid: groupData[0].roleid, rolename: groupData[0].rolename, createdBy: allIds[1] }),
79-
discordRoleModel.add({ roleid: groupData[1].roleid, rolename: groupData[1].rolename, createdBy: allIds[0] }),
80-
];
81-
await Promise.all(addRolesPromises);
82-
83-
const addGroupRolesPromises = [
84-
addGroupRoleToMember({ roleid: groupData[0].roleid, userid: allIds[0] }),
85-
addGroupRoleToMember({ roleid: groupData[0].roleid, userid: allIds[1] }),
86-
addGroupRoleToMember({ roleid: groupData[0].roleid, userid: allIds[1] }),
87-
addGroupRoleToMember({ roleid: groupData[1].roleid, userid: allIds[0] }),
88-
];
89-
await Promise.all(addGroupRolesPromises);
94+
const allIds = responses.map((r) => r.id);
95+
96+
await Promise.all([
97+
discordRoleModel.add({
98+
roleid: groupData[0].roleid,
99+
rolename: groupData[0].rolename,
100+
createdBy: allIds[1],
101+
}),
102+
discordRoleModel.add({
103+
roleid: groupData[1].roleid,
104+
rolename: groupData[1].rolename,
105+
createdBy: allIds[0],
106+
}),
107+
]);
108+
109+
await Promise.all([
110+
addGroupRoleToMember({
111+
roleid: groupData[0].roleid,
112+
userid: allIds[0],
113+
}),
114+
addGroupRoleToMember({
115+
roleid: groupData[0].roleid,
116+
userid: allIds[1],
117+
}),
118+
addGroupRoleToMember({
119+
roleid: groupData[1].roleid,
120+
userid: allIds[0],
121+
}),
122+
]);
90123
});
91124

92125
afterEach(async function () {
126+
getDiscordMembersStub.restore();
93127
await cleanDb();
94128
});
95129

96-
it("returns 200 for active users get method", function (done) {
97-
chai
130+
it("returns 200 for active users get method", function () {
131+
return chai
98132
.request(app)
99133
.get("/discord-actions/groups")
100-
.set("Cookie", `${cookieName}=${jwt}`)
101-
.end((err, res) => {
102-
if (err) {
103-
return done(err);
104-
}
134+
.set("cookie", `rds-session=${jwt}`)
135+
.then((res) => {
105136
expect(res).to.have.status(200);
106-
return done();
107137
});
108138
});
109139
});

0 commit comments

Comments
 (0)