Skip to content

Commit b15d6a7

Browse files
refactor user routes into own file
1 parent 60430fb commit b15d6a7

3 files changed

Lines changed: 32 additions & 30 deletions

File tree

src/routes/index.js

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
const express = require('express');
22
const router = express.Router();
33
const Course = require('../models/course');
4-
const User = require('../models/user');
54

65
/* GET home page. */
76
router.get('/', function(req, res, next) {
@@ -28,30 +27,5 @@ router.post('/course', (req, res, next) => {
2827
});
2928
});
3029

31-
router.post('/user', (req, res, next) => {
32-
if(!req.body.emailAddress || !req.body.fullName || !req.body.password){
33-
const err = new Error("Missing Parameters");
34-
err.status = 422;
35-
return next(err);
36-
}
37-
if(!User.validEmail(req.body.emailAddress)){
38-
const err = new Error("Malformed Email Supplied");
39-
err.status = 400;
40-
return next(err);
41-
}
42-
User.userExist(req.body.emailAddress, (err) => {
43-
if(err){
44-
return next(err);
45-
}
46-
const userData = req.body;
47-
User.create(userData, (err, user) => {
48-
if (err) {
49-
return next(err);
50-
}
51-
res.location('/');
52-
return res.status(201).json({message: "User Successfully added!", status: 201, user});
53-
});
54-
});
55-
});
5630

5731
module.exports = router;

src/routes/user.js

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,39 @@
1-
var express = require('express');
2-
var router = express.Router();
1+
const express = require('express');
2+
const router = express.Router();
3+
const User = require('../models/user');
34

45
/* GET home page. */
56
router.get('/', function(req, res, next) {
67
res.send('test');
78
});
89

910

11+
router.post('/', (req, res, next) => {
12+
if(!req.body.emailAddress || !req.body.fullName || !req.body.password){
13+
const err = new Error("Missing Parameters");
14+
err.status = 422;
15+
return next(err);
16+
}
17+
if(!User.validEmail(req.body.emailAddress)){
18+
const err = new Error("Malformed Email Supplied");
19+
err.status = 400;
20+
return next(err);
21+
}
22+
User.userExist(req.body.emailAddress, (err) => {
23+
if(err){
24+
return next(err);
25+
}
26+
const userData = req.body;
27+
User.create(userData, (err, user) => {
28+
if (err) {
29+
return next(err);
30+
}
31+
res.location('/');
32+
return res.status(201).json({message: "User Successfully added!", status: 201, user});
33+
});
34+
});
35+
});
36+
37+
1038

1139
module.exports = router;

test/user_test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ const chaiHttp = require('chai-http');
88
const server = require('../src/app');
99
const should = chai.should();
1010

11-
const postAPI = '/user';
11+
const postAPI = '/api/users';
1212

1313

1414
describe('Users', () => {
@@ -19,7 +19,7 @@ describe('Users', () => {
1919
});
2020

2121

22-
describe('/POST user', () => {
22+
describe('/POST users', () => {
2323
let user400 = {
2424
emailAddress: 'wre23sd',
2525
password: 'password',

0 commit comments

Comments
 (0)