added route to retrieve player by user id
This commit is contained in:
parent
eca0126f45
commit
dec7922727
|
|
@ -34,9 +34,7 @@ exports.findAll = (req, res) => {
|
||||||
|
|
||||||
Player.findAll({
|
Player.findAll({
|
||||||
where: condition,
|
where: condition,
|
||||||
include: {
|
include: { model: User }
|
||||||
model: User
|
|
||||||
}
|
|
||||||
}).then(data => {
|
}).then(data => {
|
||||||
res.send(data);
|
res.send(data);
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|
@ -48,9 +46,7 @@ exports.findOne = (req, res) => {
|
||||||
const id = req.params.id;
|
const id = req.params.id;
|
||||||
|
|
||||||
Player.findByPk(id, {
|
Player.findByPk(id, {
|
||||||
include: {
|
include: { model: User }
|
||||||
model: User
|
|
||||||
}
|
|
||||||
}).then(data => {
|
}).then(data => {
|
||||||
if (data) {
|
if (data) {
|
||||||
res.send(data);
|
res.send(data);
|
||||||
|
|
@ -60,4 +56,21 @@ exports.findOne = (req, res) => {
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
res.status(500).send({message: `Error retrieving user with id=${id} (${err.message}).`});
|
res.status(500).send({message: `Error retrieving user with id=${id} (${err.message}).`});
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
exports.findOneByUserId = (req, res) => {
|
||||||
|
const userId = req.params.userId;
|
||||||
|
|
||||||
|
Player.findOne({
|
||||||
|
where: { userId: userId },
|
||||||
|
include: { model: User }
|
||||||
|
}).then(data => {
|
||||||
|
if (data) {
|
||||||
|
res.send(data);
|
||||||
|
} else {
|
||||||
|
res.status(404).send({message: `Cannot find player with user id=${userId}.`});
|
||||||
|
}
|
||||||
|
}).catch(err => {
|
||||||
|
res.status(500).send({message: `Error retrieving player with user id=${userId} (${err.message}).`});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -22,4 +22,8 @@ module.exports = function(app) {
|
||||||
"/api/players/:id",
|
"/api/players/:id",
|
||||||
[authJwt.verifyToken, authJwt.isCoachOrAdmin],
|
[authJwt.verifyToken, authJwt.isCoachOrAdmin],
|
||||||
controller.findOne);
|
controller.findOne);
|
||||||
|
app.get(
|
||||||
|
"/api/players/user/:userId",
|
||||||
|
[authJwt.verifyToken, authJwt.isCoachOrAdmin],
|
||||||
|
controller.findOneByUserId);
|
||||||
};
|
};
|
||||||
|
|
@ -34,6 +34,13 @@ describe("Test player creation, authentication and retrieval", () => {
|
||||||
expect(response.statusCode).toBe(200);
|
expect(response.statusCode).toBe(200);
|
||||||
expect(response.body).toEqual(player);
|
expect(response.body).toEqual(player);
|
||||||
|
|
||||||
|
response = await request(app)
|
||||||
|
.get(`/api/players/user/${player.userId}`)
|
||||||
|
.set('x-access-token', user.accessToken);
|
||||||
|
expect(response.header['content-type']).toBe('application/json; charset=utf-8');
|
||||||
|
expect(response.statusCode).toBe(200);
|
||||||
|
expect(response.body).toEqual(player);
|
||||||
|
|
||||||
response = await request(app)
|
response = await request(app)
|
||||||
.get('/api/players')
|
.get('/api/players')
|
||||||
.set('x-access-token', user.accessToken);
|
.set('x-access-token', user.accessToken);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue