diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..64a3a62 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,7 @@ +language: node_js +node_js: + - "stable" + +script: + - npm test + - npm run lint diff --git a/README.md b/README.md index 5c15c90..6cae4a3 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,33 @@ # Lab011andy Day 11 Lab + +Project Name +Author: Andy Fiedler + +Links and Resources +[submission PR] https://github.com/AndyFiedler-401d4-Advanced-Javascript/Lab011andy/pull/1 +[travis] https://travis-ci.com/search/lab011andy + +Modules +validator.js +it validates inputs +list.js +makes a list class and has a bunch of different methods +vehicle-class.js +makes a vehicle class with two objects cars and motorcycles with they properties +Setup +.env requirements +PORT - Port Number +MONGODB_URI - URL to the running mongo instance/db +Running the app +npm start +Endpoint: /foo/bar/ +Returns a JSON object with abc in it. +Endpoint: /bing/zing/ +Returns a JSON object with xyz in it. +Tests +How do you run tests? +What assertions were made? +What assertions need to be / should be made? +UML +Link to an image of the UML for your application and response to events diff --git a/__tests__/src/auth/router.test.js b/__tests__/src/auth/router.test.js index aacac7c..36a7ce0 100644 --- a/__tests__/src/auth/router.test.js +++ b/__tests__/src/auth/router.test.js @@ -5,7 +5,7 @@ const jwt = require('jsonwebtoken'); const server = require('../../../src/app.js').server; const supergoose = require('../../supergoose.js'); -const mockRequest = supergoose.server(server); +const mockRequest = supergoose(server); let users = { admin: {username: 'admin', password: 'password', role: 'admin'}, @@ -26,6 +26,7 @@ describe('Auth Router', () => { return mockRequest.post('/signup') .send(users[userType]) .then(results => { + console.log(results.text); var token = jwt.verify(results.text, process.env.SECRET || 'changeit'); id = token.id; encodedToken = results.text; @@ -37,7 +38,9 @@ describe('Auth Router', () => { it('can signin with basic', () => { return mockRequest.post('/signin') .auth(users[userType].username, users[userType].password) + .expect(200) .then(results => { + console.log(results.text); var token = jwt.verify(results.text, process.env.SECRET || 'changeit'); expect(token.id).toEqual(id); expect(token.capabilities).toBeDefined(); diff --git a/src/app.js b/src/app.js index 3a92722..c88dac8 100644 --- a/src/app.js +++ b/src/app.js @@ -5,9 +5,13 @@ const express = require('express'); const cors = require('cors'); const morgan = require('morgan'); + // Esoteric Resources const errorHandler = require( './middleware/error.js'); const notFound = require( './middleware/404.js' ); +const router = require('./auth/router.js'); +const userModels = require('./auth/users-models.js'); +const middleWare = require('./auth/middleware.js'); // Prepare the express app const app = express(); @@ -18,11 +22,15 @@ app.use(morgan('dev')); app.use(express.json()); app.use(express.urlencoded({extended:true})); +app.use(middleWare()); +app.use(router()); +app.use(userModels()); // Catchalls app.use(notFound); app.use(errorHandler); + module.exports = { server: app, start: (port) => {