From bd862b523641d958669087bf8bcbac4cfc991204 Mon Sep 17 00:00:00 2001 From: Marcus Hammarberg Date: Tue, 5 May 2015 11:52:24 +0700 Subject: [PATCH] Updated with blog post for checking in database --- package.json | 19 ++++++++++--------- test/testHelpers.js | 3 ++- test/user.del.js | 2 +- test/user.get.js | 2 +- test/user.post.js | 10 +++++++++- test/user.update.js | 2 +- userRoutes.js | 2 +- 7 files changed, 25 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 8619a91..b4ee0e8 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "UserApiWithTests", "version": "0.0.1", - "repository" : "https://github.com/marcusoftnet/UserApiWithTest", + "repository": "https://github.com/marcusoftnet/UserApiWithTest", "description": "Creating a simple CRUD API starting from tests", "main": "app.js", "scripts": { @@ -11,15 +11,16 @@ "author": "Marcus Hammarberg", "license": "BSD-2-Clause", "devDependencies": { - "mocha": "~1.18.2", - "supertest": "~0.12.1", - "co": "~3.0.6" + "co": "*", + "mocha": "*", + "should": "^6.0.1", + "supertest": "*" }, "dependencies": { - "koa": "~0.6.1", - "koa-route": "~1.1.4", - "co-monk": "~1.0.0", - "co-body": "0.0.1", - "monk": "~0.9.0" + "co-body": "*", + "co-monk": "*", + "koa": "*", + "koa-route": "*", + "monk": "*" } } diff --git a/test/testHelpers.js b/test/testHelpers.js index 44d3ec2..91b16ec 100644 --- a/test/testHelpers.js +++ b/test/testHelpers.js @@ -10,7 +10,8 @@ module.exports.removeAll = function(done){ co(function *(){ yield users.remove({}); // and other things we need to clean up - })(done); + done(); + }); }; module.exports.test_user = { name: 'Marcus', city : 'Bandung, Indonesia'}; \ No newline at end of file diff --git a/test/user.del.js b/test/user.del.js index 0593258..752ce99 100644 --- a/test/user.del.js +++ b/test/user.del.js @@ -26,6 +26,6 @@ describe('DEL to /user/:id', function(){ request .del(userUrl) .expect(200, done); - })(); + }); }); }); \ No newline at end of file diff --git a/test/user.get.js b/test/user.get.js index f24203f..b996241 100644 --- a/test/user.get.js +++ b/test/user.get.js @@ -30,6 +30,6 @@ describe('GET /user/:id ', function(){ .expect(/Marcus/) .expect(/Bandung, Indonesia/) .expect(200, done); - })(); + }); }); }); \ No newline at end of file diff --git a/test/user.post.js b/test/user.post.js index 5bb2d2a..940175e 100644 --- a/test/user.post.js +++ b/test/user.post.js @@ -1,3 +1,5 @@ +var co = require("co"); +var should = require("should"); var helpers = require('./testHelpers.js'); var users = helpers.users; var request = helpers.request; @@ -21,7 +23,13 @@ describe('POST to /user', function(){ .post('/user') .send(test_user) .expect('location', /^\/user\/[0-9a-fA-F]{24}$/) // Mongo Object Id /user/234234523562512512 - .expect(200, done); + .expect(201) + .end(function () { + co(function *() { + var userFromDb = yield users.findOne({ name : test_user.name }); + userFromDb.name.should.equal("This is not the name you are looking for"); + }).then(done, done); + }); }); it('returns validation error if name is not present', function(done){ diff --git a/test/user.update.js b/test/user.update.js index 7a9d96a..cb5cafe 100644 --- a/test/user.update.js +++ b/test/user.update.js @@ -27,6 +27,6 @@ describe('PUT to /user', function(){ .send({name: 'Marcus v2', City: 'Bandung Updated'}) .expect('location', userUrl) .expect(204, done); - })(); + }); }); }); \ No newline at end of file diff --git a/userRoutes.js b/userRoutes.js index 2135c30..64d5ade 100644 --- a/userRoutes.js +++ b/userRoutes.js @@ -24,7 +24,7 @@ module.exports.add = function * () { var insertedUser = yield users.insert(postedUser); this.set("location", "/user/" + insertedUser._id); - this.status = 200; + this.status = 201; }; module.exports.get = function *(id) {