Advertisement
Guest User

Untitled

a guest
Jul 7th, 2017
510
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. const request = require('supertest')
  2. const express = require('express')
  3. const bodyParser = require('body-parser')
  4. const app = express()
  5. const passport = require('passport')
  6. const LocalStrategy = require('passport-local').Strategy
  7. const User = require('../src/models/User.js')
  8. const expressSession = require('express-session')
  9.  
  10. const mongoose = require('mongoose')
  11. const url = "mongodb://user1:password1@ds155091.mlab.com:55091/redditmock"
  12. mongoose.connect(url)
  13.  
  14.  
  15.  
  16.  
  17.  
  18. passport.use(new LocalStrategy(
  19. (username, password, done) => {
  20. User.findOne({username: username}, (err, user) => {
  21. if (err) return done(err)
  22. if (!user) {
  23. return done(null, false, {message: 'Incorrect username.'});
  24. }
  25. if (user.password !== password) {
  26. return done(null, false, { message: 'Incorrect password.' })
  27. }
  28. return done(null, user)
  29. })
  30. }
  31. ))
  32.  
  33.  
  34. passport.serializeUser((user, done) => {
  35. console.log('serialize executes')
  36. done(null, user._id)
  37. })
  38. passport.deserializeUser((id, done) => {
  39. User.findById(id, function(err, user) {
  40. done(err, user)
  41. })
  42. })
  43.  
  44.  
  45.  
  46. app.use(bodyParser())
  47. app.use(expressSession({secret: 'aSecretKey'}))
  48. app.use(passport.initialize())
  49. app.use(passport.session())
  50.  
  51.  
  52.  
  53. app.post('/login', passport.authenticate('local'), (req, res) => {
  54. console.log('Login route hit')
  55. })
  56.  
  57. const server = app.listen(3000)
  58.  
  59. describe('Routes', () => {
  60. it('Responses from /login contain a cookie', (done) => {
  61. request(server)
  62. .post('/login')
  63. .type('form')
  64. .send({username: 'srpalo'})
  65. .send({password: 'secretpassword'})
  66. .then((res) => {
  67. console.log('Promise fulfills')
  68. done()
  69. })
  70. })
  71. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement