Skip to content

Commit 35fad55

Browse files
added test case for userStatus onboarding
1 parent c2485d1 commit 35fad55

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

test/fixtures/userStatus/userStatus.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,11 @@ const userStatusDataAfterSignup = {
1717
monthlyHours: { committed: 0 },
1818
};
1919

20+
const userStatusDataAfterFillJoin = {
21+
currentStatus: { state: "ONBOARDING", until: "" },
22+
monthlyHours: { committed: 40 },
23+
};
24+
2025
const oooStatusDataForShortDuration = {
2126
currentStatus: {
2227
message: "",
@@ -59,6 +64,7 @@ const generateUserStatusData = (state, updatedAt, from, until = "", message = ""
5964
module.exports = {
6065
userStatusDataForNewUser,
6166
userStatusDataAfterSignup,
67+
userStatusDataAfterFillJoin,
6268
userStatusDataForOooState,
6369
oooStatusDataForShortDuration,
6470
generateUserStatusData,

test/integration/users.test.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ const chai = require("chai");
22
const { expect } = chai;
33
const chaiHttp = require("chai-http");
44

5+
const firestore = require("../../utils/firestore");
56
const app = require("../../server");
67
const authService = require("../../services/authService");
78
const addUser = require("../utils/addUser");
@@ -15,9 +16,9 @@ const searchParamValues = require("../fixtures/user/search")();
1516

1617
const config = require("config");
1718
const joinData = require("../fixtures/user/join");
18-
const { userStatusDataAfterSignup } = require("../fixtures/userStatus/userStatus");
19+
const { userStatusDataAfterSignup, userStatusDataAfterFillJoin } = require("../fixtures/userStatus/userStatus");
1920
const { addJoinData, addOrUpdate } = require("../../models/users");
20-
const { updateUserStatus } = require("../../models/userStatus");
21+
const userStatusModel = require("../../models/userStatus");
2122

2223
const cookieName = config.get("userToken.cookieName");
2324
chai.use(chaiHttp);
@@ -691,6 +692,12 @@ describe("Users", function () {
691692
});
692693

693694
describe("PUT /users/self/intro", function () {
695+
let userStatusData;
696+
beforeEach(async function () {
697+
await userStatusModel.updateUserStatus(userId, userStatusDataAfterSignup);
698+
const updateStatus = await userStatusModel.updateUserStatus(userId, userStatusDataAfterFillJoin);
699+
userStatusData = (await firestore.collection("usersStatus").doc(updateStatus.id).get()).data();
700+
});
694701
it("should return 409 if the data already present", function (done) {
695702
addJoinData(joinData(userId)[3]);
696703
chai
@@ -709,8 +716,7 @@ describe("Users", function () {
709716
});
710717
});
711718

712-
it("Should store the info in db", function (done) {
713-
updateUserStatus(userId, userStatusDataAfterSignup);
719+
it.only("Should store the info in db", function (done) {
714720
chai
715721
.request(app)
716722
.put(`/users/self/intro`)
@@ -723,6 +729,10 @@ describe("Users", function () {
723729
expect(res).to.have.status(201);
724730
expect(res.body).to.be.a("object");
725731
expect(res.body.message).to.equal("User join data and newstatus data added and updated successfully");
732+
expect(userStatusData).to.have.own.property("currentStatus");
733+
expect(userStatusData).to.have.own.property("monthlyHours");
734+
expect(userStatusData.currentStatus.state).to.equal("ONBOARDING");
735+
expect(userStatusData.monthlyHours.committed).to.equal(40);
726736
return done();
727737
});
728738
});

0 commit comments

Comments
 (0)