Skip to content

Commit 1dbe1ce

Browse files
committed
add test and add sbquery for fetch unarchived user
1 parent 3450df2 commit 1dbe1ce

File tree

2 files changed

+30
-10
lines changed

2 files changed

+30
-10
lines changed

models/users.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,8 @@ const fetchPaginatedUsers = async (query) => {
143143
const size = parseInt(query.size) || 100;
144144
const doc = (query.next || query.prev) && (await userModel.doc(query.next || query.prev).get());
145145
let dbQuery = (query.prev ? userModel.limitToLast(size) : userModel.limit(size)).orderBy("username");
146+
dbQuery = dbQuery.where("roles.archived", "==", false);
147+
146148
if (Object.keys(query).length) {
147149
if (query.search) {
148150
dbQuery = dbQuery
@@ -166,16 +168,14 @@ const fetchPaginatedUsers = async (query) => {
166168

167169
snapshot.forEach((doc) => {
168170
const userData = doc.data();
169-
if (!userData.roles.archived) {
170-
allUsers.push({
171-
id: doc.id,
172-
...doc.data(),
173-
phone: undefined,
174-
email: undefined,
175-
tokens: undefined,
176-
chaincode: undefined,
177-
});
178-
}
171+
allUsers.push({
172+
id: doc.id,
173+
...userData,
174+
phone: undefined,
175+
email: undefined,
176+
tokens: undefined,
177+
chaincode: undefined,
178+
});
179179
});
180180
return {
181181
allUsers,

test/integration/users.test.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,26 @@ describe("Users", function () {
139139
return done();
140140
});
141141
});
142+
it("Should get all the users with archived false", function (done) {
143+
chai
144+
.request(app)
145+
.get("/users")
146+
.end((err, res) => {
147+
if (err) {
148+
return done(err);
149+
}
150+
151+
expect(res).to.have.status(200);
152+
expect(res.body).to.be.a("object");
153+
expect(res.body.message).to.equal("Users returned successfully!");
154+
expect(res.body.users).to.be.a("array");
155+
const userData = res.body.users;
156+
userData.forEach((user) => {
157+
expect(user.roles.archived).to.equal(false);
158+
});
159+
return done();
160+
});
161+
});
142162

143163
it("Should get all the users in system when query params are valid", function (done) {
144164
chai

0 commit comments

Comments
 (0)