From 5276bceaa0e5438c8ec72807dee7bf1ca03ada23 Mon Sep 17 00:00:00 2001 From: harerakalex <“hareraloston@gmail.com”> Date: Wed, 13 Nov 2019 08:21:13 +0200 Subject: [PATCH] bug(follower response): improve follower response --- src/controllers/followController.js | 44 ++++++++++++++++++----------- src/tests/user.test.js | 4 +-- 2 files changed, 30 insertions(+), 18 deletions(-) diff --git a/src/controllers/followController.js b/src/controllers/followController.js index 15de9f4..ddeeb25 100644 --- a/src/controllers/followController.js +++ b/src/controllers/followController.js @@ -110,14 +110,20 @@ class Following { }); } - await Promise.all(followingList.map(async (follower) => { - const userInfo = await User.findOne({ where: { id: follower.following } }); - userList.push({ - id: userInfo.dataValues.id, - username: userInfo.dataValues.userName, - }); - return userList; - })); + await Promise.all( + followingList.map(async (follower) => { + const userInfo = await User.findOne({ where: { id: follower.following } }); + userList.push({ + id: userInfo.dataValues.id, + username: userInfo.dataValues.userName, + firstName: userInfo.dataValues.firstName, + lastName: userInfo.dataValues.lastName, + image: userInfo.dataValues.image, + bio: userInfo.dataValues.bio + }); + return userList; + }) + ); return res.status(200).json({ data: userList }); @@ -151,14 +157,20 @@ class Following { }); } - await Promise.all(followersList.map(async (follower) => { - const userInfo = await User.findOne({ where: { id: follower.follower } }); - userList.push({ - id: userInfo.dataValues.id, - username: userInfo.dataValues.userName, - }); - return userList; - })); + await Promise.all( + followersList.map(async (follower) => { + const userInfo = await User.findOne({ where: { id: follower.follower } }); + userList.push({ + id: userInfo.dataValues.id, + username: userInfo.dataValues.userName, + firstName: userInfo.dataValues.firstName, + lastName: userInfo.dataValues.lastName, + image: userInfo.dataValues.image, + bio: userInfo.dataValues.bio + }); + return userList; + }) + ); return res.status(200).json({ data: userList }); diff --git a/src/tests/user.test.js b/src/tests/user.test.js index 1429b9b..eccf976 100644 --- a/src/tests/user.test.js +++ b/src/tests/user.test.js @@ -821,7 +821,7 @@ describe('GET /api/v1/profiles/:userName/following', () => { expect(res).to.be.an('object'); expect(res.body).to.have.keys('data'); expect(res.body.data).to.be.an('array'); - expect(res.body.data[0]).to.have.keys('id', 'username'); + expect(res.body.data[0]).to.have.keys('id', 'username', 'bio', 'firstName', 'image', 'lastName'); done(); }); }); @@ -836,7 +836,7 @@ describe('GET /api/v1/profiles/:userName/followers', () => { expect(res).to.be.an('object'); expect(res.body).to.have.keys('data'); expect(res.body.data).to.be.an('array'); - expect(res.body.data[0]).to.have.keys('id', 'username'); + expect(res.body.data[0]).to.have.keys('id', 'username', 'bio', 'firstName', 'image', 'lastName'); done(); }); });