Skip to content

Commit

Permalink
Refactor codebase
Browse files Browse the repository at this point in the history
Increase test coverage
Use consistent class definitions in files
  • Loading branch information
Daymorelah committed Aug 26, 2019
1 parent e79ee91 commit 206ed2e
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 5 deletions.
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
"main": "index.js",
"scripts": {
"coverage": "nyc report --reporter=text-lcov | coveralls",
"test": "NODE_ENV=test yarn undo-migration && NODE_ENV=test yarn migrate && NODE_ENV=test yarn seed && NODE_ENV=test nyc --reporter=html --reporter=text mocha --exit --require @babel/register --require @babel/polyfill src/test/index.js",
"test": "NODE_ENV=test yarn undo:migration && NODE_ENV=test yarn migrate && NODE_ENV=test yarn undo:seed && NODE_ENV=test yarn seed && NODE_ENV=test nyc --reporter=html --reporter=text mocha --exit --require @babel/register --require @babel/polyfill src/test/index.js",
"coveralls": "nyc report --reporter=text-lcov | coveralls",
"dev-start": "NODE_ENV=development nodemon --exec babel-node src/index.js",
"build": "babel src --out-dir build",
"start": "node build/index.js",
"undo-seeding": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:seed:undo:all",
"undo:seed": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:seed:undo:all",
"seed": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:seed:all",
"undo-migration": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:migrate:undo:all",
"undo:migration": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:migrate:undo:all",
"migrate": "./node_modules/.bin/babel-node ./node_modules/.bin/sequelize db:migrate"
},
"author": "Andela Simulations Programme",
Expand Down
14 changes: 14 additions & 0 deletions src/test/integrationTests/userController.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -128,5 +128,19 @@ describe('Integration tests for the user controller', () => {
expect(response.body.message)
.to.equal('Invalid request. All fields are required');
});

it('should return client error when user details is missing', async () => {
const userDetails = {
password: 'johndoe@wemail.com',
};
const response = await chai.request(app).post('/api/v1/auth/login')
.send(userDetails);
expect(response.status).to.deep.equal(400);
expect(response.body).to.have.property('success');
expect(response.body.success).to.equal(false);
expect(response.body).to.have.property('message');
expect(response.body.message)
.to.equal('Invalid request. All fields are required');
});
});
});
7 changes: 5 additions & 2 deletions src/test/unitTests/middleware.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,10 @@ const req = {
query: {
token: () => {}
},
headers: { 'x-access-token': () => undefined }
body: {
token: () => {}
},
headers: { 'x-access-token': undefined }
};
const res = {};
const next = () => {};
Expand All @@ -26,7 +29,7 @@ describe('Unit test for the Authorization utility function', () => {
expect(req.decoded.message).to.equal('token found in query');
});
it('should check the request body for a token', async () => {
req.body = () => {}; req.query = () => undefined;
req.body.token = () => {}; req.query.token = undefined;
stubbedMethod = sinon
.stub(Authentication, 'verifyToken')
.returns({ success: true, message: 'token found in body' });
Expand Down

0 comments on commit 206ed2e

Please sign in to comment.