Skip to content

Commit 3475f19

Browse files
authored
Remove userStatus feature flag (#1358)
* remove userStatus feature flag * remove userStatusFlag
1 parent a3131fc commit 3475f19

File tree

5 files changed

+38
-80
lines changed

5 files changed

+38
-80
lines changed

controllers/tasks.js

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ const { parseSearchQuery } = require("../utils/tasks");
2121
*/
2222
const addNewTask = async (req, res) => {
2323
try {
24-
// userStatusFlag is the Feature flag for status update based on task status. This flag is temporary and will be removed once the feature becomes stable.
25-
const { userStatusFlag } = req.query;
26-
const isUserStatusEnabled = userStatusFlag === "true";
2724
const { id: createdBy } = req.userData;
2825
const dependsOn = req.body.dependsOn;
2926
let userStatusUpdate;
@@ -38,7 +35,7 @@ const addNewTask = async (req, res) => {
3835
dependsOn,
3936
};
4037
const taskDependency = dependsOn && (await dependencyModel.addDependency(data));
41-
if (isUserStatusEnabled && req.body.assignee) {
38+
if (req.body.assignee) {
4239
userStatusUpdate = await updateUserStatusOnTaskUpdate(req.body.assignee);
4340
}
4441
return res.json({
@@ -269,9 +266,6 @@ const getTask = async (req, res) => {
269266
*/
270267
const updateTask = async (req, res) => {
271268
try {
272-
// userStatusFlag is the Feature flag for status update based on task status. This flag is temporary and will be removed once the feature becomes stable.
273-
const { userStatusFlag } = req.query;
274-
const isUserStatusEnabled = userStatusFlag === "true";
275269
const task = await tasks.fetchTask(req.params.id);
276270
if (!task.taskData) {
277271
return res.boom.notFound("Task not found");
@@ -283,15 +277,14 @@ const updateTask = async (req, res) => {
283277
}
284278
}
285279
await tasks.updateTask(req.body, req.params.id);
286-
if (isUserStatusEnabled && req.body.assignee) {
280+
if (req.body.assignee) {
287281
// New Assignee Status Update
288282
await updateUserStatusOnTaskUpdate(req.body.assignee);
289283
// Old Assignee Status Update if available
290284
if (task.taskData.assigneeId) {
291285
await updateStatusOnTaskCompletion(task.taskData.assigneeId);
292286
}
293287
}
294-
295288
return res.status(204).send();
296289
} catch (err) {
297290
if (err.message.includes("Invalid dependency passed")) {
@@ -311,9 +304,6 @@ const updateTask = async (req, res) => {
311304
*/
312305
const updateTaskStatus = async (req, res, next) => {
313306
try {
314-
// userStatusFlag is the Feature flag for status update based on task status. This flag is temporary and will be removed once the feature becomes stable.
315-
const { userStatusFlag } = req.query;
316-
const isUserStatusEnabled = userStatusFlag === "true";
317307
let userStatusUpdate;
318308
const taskId = req.params.id;
319309
const { dev } = req.query;
@@ -374,7 +364,7 @@ const updateTaskStatus = async (req, res, next) => {
374364
}
375365
}
376366

377-
if (isUserStatusEnabled && req.body.status) {
367+
if (req.body.status) {
378368
userStatusUpdate = await updateStatusOnTaskCompletion(userId);
379369
}
380370
return res.json({

middlewares/validators/userStatus.js

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,7 @@ const { userState, CANCEL_OOO } = require("../../constants/userStatus");
33
const threeDaysInMilliseconds = 172800000;
44

55
const validateUserStatusData = async (todaysTime, req, res, next) => {
6-
// userStatusFlag is the Feature flag for status update based on task status. This flag is temporary and will be removed once the feature becomes stable.
7-
const { userStatusFlag } = req.query;
8-
const isUserStatusEnabled = userStatusFlag === "true";
9-
let validUserStates = [userState.OOO, userState.ONBOARDING, userState.IDLE, userState.ACTIVE];
10-
11-
if (isUserStatusEnabled) {
12-
validUserStates = [userState.OOO, userState.ONBOARDING];
13-
}
6+
const validUserStates = [userState.OOO, userState.ONBOARDING];
147

158
const statusSchema = Joi.object({
169
currentStatus: Joi.object().keys({

test/integration/taskBasedStatusUpdate.test.js

Lines changed: 20 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ describe("Task Based Status Updates", function () {
4444
it("Should Create a new user status Document with status IDLE if the status document doesn't exist & the user is IDLE.", async function () {
4545
const res = await chai
4646
.request(app)
47-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
47+
.patch(`/tasks/self/taskid123`)
4848
.set("cookie", `${cookieName}=${userJwt}`)
4949
.send(reqBody);
5050
expect(res.body.userStatus.status).to.equal("success");
@@ -59,7 +59,7 @@ describe("Task Based Status Updates", function () {
5959
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
6060
const res = await chai
6161
.request(app)
62-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
62+
.patch(`/tasks/self/taskid123`)
6363
.set("cookie", `${cookieName}=${userJwt}`)
6464
.send(reqBody);
6565
expect(res.body.userStatus.status).to.equal("success");
@@ -75,7 +75,7 @@ describe("Task Based Status Updates", function () {
7575
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
7676
const res = await chai
7777
.request(app)
78-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
78+
.patch(`/tasks/self/taskid123`)
7979
.set("cookie", `${cookieName}=${userJwt}`)
8080
.send(reqBody);
8181
expect(res.body.userStatus.status).to.equal("success");
@@ -88,7 +88,7 @@ describe("Task Based Status Updates", function () {
8888
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
8989
const res = await chai
9090
.request(app)
91-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
91+
.patch(`/tasks/self/taskid123`)
9292
.set("cookie", `${cookieName}=${userJwt}`)
9393
.send(reqBody);
9494
expect(res.body.userStatus.status).to.equal("success");
@@ -103,7 +103,7 @@ describe("Task Based Status Updates", function () {
103103
reqBody.status = "NEEDS_REVIEW";
104104
const res = await chai
105105
.request(app)
106-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
106+
.patch(`/tasks/self/taskid123`)
107107
.set("cookie", `${cookieName}=${userJwt}`)
108108
.send(reqBody);
109109
expect(res.body.userStatus.status).to.equal("success");
@@ -117,7 +117,7 @@ describe("Task Based Status Updates", function () {
117117
reqBody.status = "NEEDS_REVIEW";
118118
const res = await chai
119119
.request(app)
120-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
120+
.patch(`/tasks/self/taskid123`)
121121
.set("cookie", `${cookieName}=${userJwt}`)
122122
.send(reqBody);
123123
expect(res.body.userStatus.status).to.equal("success");
@@ -138,7 +138,7 @@ describe("Task Based Status Updates", function () {
138138
it("Should Create a new user status Document with status ACTIVE if the status document doesn't exist & the user is ACTIVE.", async function () {
139139
const res = await chai
140140
.request(app)
141-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
141+
.patch(`/tasks/self/taskid123`)
142142
.set("cookie", `${cookieName}=${userJwt}`)
143143
.send(reqBody);
144144
expect(res.body.userStatus.status).to.equal("success");
@@ -153,7 +153,7 @@ describe("Task Based Status Updates", function () {
153153
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
154154
const res = await chai
155155
.request(app)
156-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
156+
.patch(`/tasks/self/taskid123`)
157157
.set("cookie", `${cookieName}=${userJwt}`)
158158
.send(reqBody);
159159
expect(res.body.userStatus.status).to.equal("success");
@@ -169,7 +169,7 @@ describe("Task Based Status Updates", function () {
169169
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
170170
const res = await chai
171171
.request(app)
172-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
172+
.patch(`/tasks/self/taskid123`)
173173
.set("cookie", `${cookieName}=${userJwt}`)
174174
.send(reqBody);
175175
expect(res.body.userStatus.status).to.equal("success");
@@ -182,7 +182,7 @@ describe("Task Based Status Updates", function () {
182182
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
183183
const res = await chai
184184
.request(app)
185-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
185+
.patch(`/tasks/self/taskid123`)
186186
.set("cookie", `${cookieName}=${userJwt}`)
187187
.send(reqBody);
188188
expect(res.body.userStatus.status).to.equal("success");
@@ -197,7 +197,7 @@ describe("Task Based Status Updates", function () {
197197
reqBody.status = "NEEDS_REVIEW";
198198
const res = await chai
199199
.request(app)
200-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
200+
.patch(`/tasks/self/taskid123`)
201201
.set("cookie", `${cookieName}=${userJwt}`)
202202
.send(reqBody);
203203
expect(res.body.userStatus.status).to.equal("success");
@@ -211,7 +211,7 @@ describe("Task Based Status Updates", function () {
211211
reqBody.status = "NEEDS_REVIEW";
212212
const res = await chai
213213
.request(app)
214-
.patch(`/tasks/self/taskid123?userStatusFlag=true`)
214+
.patch(`/tasks/self/taskid123`)
215215
.set("cookie", `${cookieName}=${userJwt}`)
216216
.send(reqBody);
217217
expect(res.body.userStatus.status).to.equal("success");
@@ -253,11 +253,7 @@ describe("Task Based Status Updates", function () {
253253
});
254254

255255
it("Should Create a new user status Document with status ACTIVE if the status document doesn't exist.", async function () {
256-
const res = await chai
257-
.request(app)
258-
.post(`/tasks?userStatusFlag=true`)
259-
.set("cookie", `${cookieName}=${superUserJwt}`)
260-
.send(reqBody);
256+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
261257
expect(res.status).to.equal(200);
262258
expect(res.body.userStatus.status).to.equal("success");
263259
expect(res.body.userStatus.message).to.equal(
@@ -269,11 +265,7 @@ describe("Task Based Status Updates", function () {
269265
it("Should change the Future Status to ACTIVE if the user is currently OOO .", async function () {
270266
const statusData = await generateStatusDataForState(userId, userState.OOO);
271267
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
272-
const res = await chai
273-
.request(app)
274-
.post(`/tasks?userStatusFlag=true`)
275-
.set("cookie", `${cookieName}=${superUserJwt}`)
276-
.send(reqBody);
268+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
277269
expect(res.status).to.equal(200);
278270
expect(res.body.userStatus.status).to.equal("success");
279271
expect(res.body.userStatus.message).to.equal(
@@ -286,11 +278,7 @@ describe("Task Based Status Updates", function () {
286278
it("Should not change the ACTIVE state if the user is already ACTIVE.", async function () {
287279
const statusData = await generateStatusDataForState(userId, userState.ACTIVE);
288280
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
289-
const res = await chai
290-
.request(app)
291-
.post(`/tasks?userStatusFlag=true`)
292-
.set("cookie", `${cookieName}=${superUserJwt}`)
293-
.send(reqBody);
281+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
294282
expect(res.status).to.equal(200);
295283
expect(res.body.userStatus.status).to.equal("success");
296284
expect(res.body.userStatus.message).to.equal("The status is already ACTIVE");
@@ -300,11 +288,7 @@ describe("Task Based Status Updates", function () {
300288
it("Should change the status to ACTIVE if the status is not ACTIVE i.e IDLE.", async function () {
301289
const statusData = await generateStatusDataForState(userId, userState.IDLE);
302290
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
303-
const res = await chai
304-
.request(app)
305-
.post(`/tasks?userStatusFlag=true`)
306-
.set("cookie", `${cookieName}=${superUserJwt}`)
307-
.send(reqBody);
291+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
308292
expect(res.status).to.equal(200);
309293
expect(res.body.userStatus.status).to.equal("success");
310294
expect(res.body.userStatus.message).to.equal("The status has been updated to ACTIVE");
@@ -315,11 +299,7 @@ describe("Task Based Status Updates", function () {
315299
it("Should throw an error to if an invalid state is set in the Status.", async function () {
316300
const statusData = await generateStatusDataForState(userId, "InvalidState");
317301
await firestore.collection("usersStatus").doc("userStatus").set(statusData);
318-
const res = await chai
319-
.request(app)
320-
.post(`/tasks?userStatusFlag=true`)
321-
.set("cookie", `${cookieName}=${superUserJwt}`)
322-
.send(reqBody);
302+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
323303
expect(res.status).to.equal(200);
324304
expect(res.body.userStatus.status).to.equal(500);
325305
expect(res.body.userStatus.error).to.equal("Internal Server Error");
@@ -330,11 +310,7 @@ describe("Task Based Status Updates", function () {
330310

331311
it("Should give NotFound message if the userName is invalid.", async function () {
332312
reqBody.assignee = "funkeyMonkey123";
333-
const res = await chai
334-
.request(app)
335-
.post(`/tasks?userStatusFlag=true`)
336-
.set("cookie", `${cookieName}=${superUserJwt}`)
337-
.send(reqBody);
313+
const res = await chai.request(app).post(`/tasks`).set("cookie", `${cookieName}=${superUserJwt}`).send(reqBody);
338314
expect(res.status).to.equal(200);
339315
expect(res.body.userStatus.status).to.equal(404);
340316
expect(res.body.userStatus.error).to.equal("Not Found");
@@ -565,7 +541,7 @@ describe("Task Based Status Updates", function () {
565541
reqBody.assignee = user2Name;
566542
const res = await chai
567543
.request(app)
568-
.patch(`/tasks/taskid123?userStatusFlag=true`)
544+
.patch(`/tasks/taskid123`)
569545
.set("cookie", `${cookieName}=${superUserJwt}`)
570546
.send(reqBody);
571547
expect(res.status).to.equal(204);
@@ -583,7 +559,7 @@ describe("Task Based Status Updates", function () {
583559
reqBody.assignee = user2Name;
584560
const res = await chai
585561
.request(app)
586-
.patch(`/tasks/taskid123?userStatusFlag=true`)
562+
.patch(`/tasks/taskid123`)
587563
.set("cookie", `${cookieName}=${superUserJwt}`)
588564
.send(reqBody);
589565
expect(res.status).to.equal(204);

0 commit comments

Comments
 (0)