tracman-server/test.js

152 lines
2.8 KiB
JavaScript
Executable File

const chai = require('chai'),
chaiHttp = require('chai-http'),
request = require('supertest'),
server = require('./server');
chai.use(chaiHttp);
describe('Public', function() {
it('Displays homepage', function(done){
request(server).get('/')
.expect(200)
.end(function(err,res){ done(); });
});
it('Displays help page', function(done){
request(server).get('/help')
.expect(200)
.end(function(err,res){ done(); });
});
it('Displays terms of service', function(done){
request(server).get('/terms')
.expect(200)
.end(function(err,res){ done(); });
});
it('Displays privacy policy', function(done){
request(server).get('/privacy')
.expect(200)
.end(function(err,res){ done(); });
});
it('Displays robots.txt', function(done){
request(server).get('/robots.txt')
.expect(200)
.expect('Content-Type', /text/)
.end(function(err,res){ done(); });
});
it('Displays demo map', function(done){
request(server).get('/map/keith')
.expect(200)
.end(function(err,res){ done(); });
});
});
describe('User', function() {
it('Creates an account', function(done){
request(server).post('/signup',{"email":"test@tracman.org"})
.expect(200)
.end(function(err,res){ done(); });
});
//TODO: it('Creates a password', function(done){
// });
//TODO: it('Logs in', function(done){
// });
//TODO: it('Logs out', function(done){
// });
//TODO: it('Forgets password', function(done){
// });
//TODO: it('Changes forgotten password', function(done){
// });
//TODO: it('Logs back in', function(done){
// });
//TODO: it('Changes email address', function(done){
// });
//TODO: it('Changes password', function(done){
// });
//TODO: it('Changes settings', function(done){
// });
//TODO: it('Connects a Google account', function(done){
// });
//TODO: it('Connects a Facebook account', function(done){
// });
//TODO: it('Connects a Twitter account', function(done){
// });
//TODO: it('Logs in with Google', function(done){
// });
//TODO: it('Logs in with Facebook', function(done){
// });
//TODO: it('Logs in with Twitter', function(done){
// });
//TODO: it('Disconnects a Google account', function(done){
// });
//TODO: it('Disconnects a Facebook account', function(done){
// });
//TODO: it('Disconnects a Twitter account', function(done){
// });
//TODO: it('Shows own map', function(done){
// request(server).get('/map')
// .expect(200)
// .end(function(err,res){ done(); });
// });
//TODO: it('Sets own location', function(done){
// });
//TODO: it('Tracks own location', function(done){
// });
//TODO: it('Clears own location', function(done){
// });
//TODO: it('Deletes account', function(done){
// });
});