#68 Fixed tests
parent
ae284bc065
commit
bbeb66233d
|
@ -207,7 +207,6 @@ ready_promise_list.push( new Promise( (resolve, reject) => {
|
|||
p => p.catch(e => e)
|
||||
)).then( () => {
|
||||
console.log('Tracman server is running properly\n')
|
||||
app.emit('ready') // Used for tests
|
||||
}).catch( (err) => {
|
||||
if (err) console.error(err.message)
|
||||
console.log(`Tracman server is not running properly!\n`)
|
||||
|
|
19
test/auth.js
19
test/auth.js
|
@ -1,9 +1,9 @@
|
|||
'use strict'
|
||||
|
||||
const request = require('supertest')
|
||||
const server = require('../server')
|
||||
const User = require('../config/models').user
|
||||
const chai = require('chai')
|
||||
const User = require('../config/models').user
|
||||
const request = require('supertest')
|
||||
.agent(require('../server'))
|
||||
chai.use(
|
||||
require('chai-http')
|
||||
)
|
||||
|
@ -14,9 +14,6 @@ const TEST_EMAIL = 'test@tracman.org'
|
|||
const TEST_PASSWORD = 'mDAQYe2VYE'
|
||||
const BAD_PASSWORD = 'password123'
|
||||
|
||||
// Ensure server is ready
|
||||
before((done) => { server.on('ready', done) })
|
||||
|
||||
describe('Authentication', () => {
|
||||
|
||||
describe('Account creation', () => {
|
||||
|
@ -31,7 +28,7 @@ describe('Authentication', () => {
|
|||
it('Fails to create an account with a fake email', async () => {
|
||||
|
||||
// Confirm redirect
|
||||
chai.expect( await request(server).post('/signup')
|
||||
chai.expect( await request.post('/signup')
|
||||
.type('form').send({ 'email':FAKE_EMAIL })
|
||||
).to.redirectTo('/login#signup')
|
||||
|
||||
|
@ -50,7 +47,7 @@ describe('Authentication', () => {
|
|||
it('Creates an account with a valid email', async () => {
|
||||
|
||||
// Set email address
|
||||
chai.expect( await request(server).post('/signup')
|
||||
chai.expect( await request.post('/signup')
|
||||
.type('form').send({ 'email':TEST_EMAIL })
|
||||
).to.redirectTo('/login')
|
||||
|
||||
|
@ -62,13 +59,13 @@ describe('Authentication', () => {
|
|||
|
||||
it('Loads password page', async () => {
|
||||
// Load password page
|
||||
chai.expect(await request(server)
|
||||
chai.expect(await request
|
||||
.get(`/settings/password/${passwordless_user.auth.passToken}`)
|
||||
).html.to.have.status(200)
|
||||
})
|
||||
|
||||
it('Fails to set a weak password', async () => {
|
||||
chai.expect( await request(server)
|
||||
chai.expect( await request
|
||||
.post(`/settings/password/${passwordless_user.auth.passToken}`)
|
||||
.type('form').send({ 'password':BAD_PASSWORD })
|
||||
).to.redirectTo(`/settings/password/${passwordless_user.auth.passToken}`)
|
||||
|
@ -77,7 +74,7 @@ describe('Authentication', () => {
|
|||
it('Sets a strong password', () => {
|
||||
|
||||
// Set password
|
||||
return request(server)
|
||||
return request
|
||||
.post(`/settings/password/${passwordless_user.auth.passToken}`)
|
||||
.type('form').send({ 'password':TEST_PASSWORD })
|
||||
.then( async (res) => {
|
||||
|
|
|
@ -1,50 +1,47 @@
|
|||
const chai = require('chai')
|
||||
const chaiHttp = require('chai-http')
|
||||
const request = require('supertest')
|
||||
const server = require('../server')
|
||||
chai.use(chaiHttp)
|
||||
'use strict'
|
||||
|
||||
// Ensure server is ready
|
||||
before((done) => { server.on('ready', done) })
|
||||
const chai = require('chai')
|
||||
const request = require('supertest')
|
||||
.agent(require('../server'))
|
||||
chai.use(
|
||||
require('chai-http')
|
||||
)
|
||||
|
||||
describe('Index routes', () => {
|
||||
|
||||
// Ensure server is ready
|
||||
before((done) => { server.on('ready', done) })
|
||||
|
||||
it( 'Displays homepage', async () => {
|
||||
let res = await request(server).get('/')
|
||||
let res = await request.get('/')
|
||||
chai.expect(res).html.to.have.status(200)
|
||||
})
|
||||
|
||||
it('Displays help page', async () => {
|
||||
let res = await request(server).get('/help')
|
||||
let res = await request.get('/help')
|
||||
chai.expect(res).html.to.have.status(200)
|
||||
})
|
||||
|
||||
it('Displays terms of service', async () => {
|
||||
let res = await request(server).get('/terms')
|
||||
let res = await request.get('/terms')
|
||||
chai.expect(res).html.to.have.status(200)
|
||||
})
|
||||
|
||||
it('Displays privacy policy', async () => {
|
||||
let res = await request(server).get('/privacy')
|
||||
let res = await request.get('/privacy')
|
||||
chai.expect(res).html.to.have.status(200)
|
||||
})
|
||||
|
||||
it('Displays robots.txt', async () => {
|
||||
let res = await request(server).get('/')
|
||||
let res = await request.get('/')
|
||||
chai.expect(res).to.have.status(200)//.to.be.text Not sure why mocha's
|
||||
// getting text/html in mocha; it's showing text/plain in chrome
|
||||
})
|
||||
|
||||
it('Redirects /signup to /logn#signup', async () => {
|
||||
let res = await request(server).get('/signup')
|
||||
let res = await request.get('/signup')
|
||||
chai.expect(res).to.redirectTo('/login#signup')
|
||||
})
|
||||
|
||||
it('Redirects /demo to /map/demo', async () => {
|
||||
let res = await request(server).get('/demo')
|
||||
let res = await request.get('/demo')
|
||||
chai.expect(res).to.redirectTo('/map/demo')
|
||||
})
|
||||
|
||||
|
|
20
test/map.js
20
test/map.js
|
@ -1,21 +1,21 @@
|
|||
const chai = require('chai')
|
||||
const chaiHttp = require('chai-http')
|
||||
const request = require('supertest')
|
||||
const server = require('../server')
|
||||
chai.use(chaiHttp)
|
||||
'use strict'
|
||||
|
||||
// Ensure server is ready
|
||||
before((done) => { server.on('ready', done) })
|
||||
const chai = require('chai')
|
||||
const request = require('supertest')
|
||||
.agent(require('../server'))
|
||||
chai.use(
|
||||
require('chai-http')
|
||||
)
|
||||
|
||||
describe('Mapping', () => {
|
||||
|
||||
it('Displays demo map', async () => {
|
||||
let res = await request(server).get('/map/demo')
|
||||
let res = await request.get('/map/demo')
|
||||
chai.expect(res).to.have.status(200).to.be.html
|
||||
})
|
||||
|
||||
// TODO: it('Shows own map', async () => {
|
||||
// request(server).get('/map')
|
||||
// request.get('/map')
|
||||
// .expect(200)
|
||||
// .end(function(err,res){ done(); })
|
||||
// })
|
||||
|
@ -36,4 +36,4 @@ describe('Mapping', () => {
|
|||
|
||||
// })
|
||||
|
||||
})
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue