Skip to content

Commit c3c5b04

Browse files
Added optional chaining and updated test
1 parent ad2a2e6 commit c3c5b04

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

models/members.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ const moveToMembers = async (userId) => {
4949
try {
5050
const userDoc = await userModel.doc(userId).get()
5151
const user = userDoc.data()
52-
if (user.roles && user.roles.member) return { isAlreadyMember: true, movedToMember: false }
52+
if (user?.roles?.member) return { isAlreadyMember: true, movedToMember: false }
5353
const roles = user.roles ? { ...user.roles, member: true } : { member: true }
5454
await userModel.doc(userId).update({
5555
roles

test/integration/members.test.js

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ const cookieName = config.get('userToken.cookieName')
1616
chai.use(chaiHttp)
1717

1818
const superUser = userData[4]
19+
const userAlreadyMember = userData[0]
1920
const userToBeMadeMember = userData[1]
2021
const nonSuperUser = userData[2]
2122

@@ -106,7 +107,7 @@ describe('Members', function () {
106107
})
107108
})
108109

109-
describe('PATCH /members/moveToMembers', function () {
110+
describe('PATCH /members/moveToMembers/:username', function () {
110111
before(async function () {
111112
await cleanDb()
112113
const userId = await addUser(superUser)
@@ -148,19 +149,21 @@ describe('Members', function () {
148149
})
149150

150151
it('Should return 400 if user is already a member', function (done) {
151-
chai
152-
.request(app)
153-
.patch(`/members/moveToMembers/${userToBeMadeMember.username}`)
154-
.set('cookie', `${cookieName}=${jwt}`)
155-
.end((err, res) => {
156-
if (err) { return done(err) }
152+
addUser(userAlreadyMember).then(() => {
153+
chai
154+
.request(app)
155+
.patch(`/members/moveToMembers/${userAlreadyMember.username}`)
156+
.set('cookie', `${cookieName}=${jwt}`)
157+
.end((err, res) => {
158+
if (err) { return done(err) }
157159

158-
expect(res).to.have.status(400)
159-
expect(res.body).to.be.a('object')
160-
expect(res.body.message).to.equal('User is already a member')
160+
expect(res).to.have.status(400)
161+
expect(res.body).to.be.a('object')
162+
expect(res.body.message).to.equal('User is already a member')
161163

162-
return done()
163-
})
164+
return done()
165+
})
166+
})
164167
})
165168

166169
it('Should return 401 if user is not a super_user', function (done) {

0 commit comments

Comments
 (0)