Skip to content

Commit c15bf1d

Browse files
committed
fix: creating a item should return the newly created value.
fixes nodeshift-starters#79
1 parent 8f8eef9 commit c15bf1d

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

lib/api/fruits.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ function findAll () {
1111
}
1212

1313
function create (name, stock) {
14-
return db.query('INSERT INTO products (name, stock) VALUES ($1, $2)', [name, stock]);
14+
return db.query('INSERT INTO products (name, stock) VALUES ($1, $2) RETURNING *', [name, stock]);
1515
}
1616

1717
function update (options = {}) {

lib/routes/fruits.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ router.get('/fruits', (request, response) => {
2929

3030
router.post('/fruits', validations.validateCreate, (request, response) => {
3131
const {name, stock} = request.body;
32-
return fruits.create(name, stock).then(() => {
33-
response.sendStatus(201);
32+
return fruits.create(name, stock).then((result) => {
33+
response.status(201);
34+
return response.send(result.rows[0]);
3435
}).catch((err) => {
3536
response.status(400);
3637
response.send(err);

test/fruits-test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ test('test POST fruit', (t) => {
145145
create: (name, stock) => {
146146
t.equal(name, fruitData.name, `respone.body.name should be ${fruitData.name}`);
147147
t.equal(stock, fruitData.stock, `respone.body.stock should be ${fruitData.stock}`);
148-
return Promise.resolve();
148+
return Promise.resolve({rows: []});
149149
}
150150
};
151151

0 commit comments

Comments
 (0)