examples/vhost/test.js
2013-12-31 15:43:36 +13:00

90 lines
2.3 KiB
JavaScript

var app = require('./app');
var request = require('supertest').agent(app.listen());;
describe('Virtual Host', function(){
describe('www subdomain koa app', function(){
describe('when GET /', function(){
it('should say "Hello from www app"', function(done){
request
.get('/')
.set('Host', 'www.example.com')
.expect(200)
.expect('Hello from www app', done);
})
it('should set X-Custom', function(done){
request
.get('/')
.set('Host', 'www.example.com')
.expect('X-Custom', 'Dub Dub Dub App')
.expect(200, done);
})
})
describe('when GET / without subdomain', function(){
it('should say "Hello from www app"', function(done){
request
.get('/')
.set('Host', 'example.com')
.expect(200)
.expect('Hello from www app', done);
})
it('should set X-Custom', function(done){
request
.get('/')
.set('Host', 'example.com')
.expect('X-Custom', 'Dub Dub Dub App')
.expect(200, done);
})
})
describe('when not GET /', function(){
it('should 404', function(done){
request
.get('/aklsjdf')
.set('Host', 'example.com')
.expect(404, done);
})
})
})
describe('bar subdomain array bundle', function(){
describe('when GET /', function(){
it('should say "Howzit? From bar middleware bundle"', function(done){
request
.get('/')
.set('Host', 'bar.example.com')
.expect(200)
.expect('Howzit? From bar middleware bundle', done);
})
it('should set X-Response-Time', function(done){
request
.get('/')
.set('Host', 'bar.example.com')
.expect('X-Response-Time', /ms$/)
.expect(200, done);
})
})
describe('when not GET /', function(){
it('should 404', function(done){
request
.get('/aklsjdf')
.set('Host', 'bar.example.com')
.expect(404, done);
})
})
})
describe('default vhost', function(){
describe('when GET /', function(){
it('should 404', function(done){
request
.get('/')
.set('Host', '127.0.0.1')
.expect(404, done);
})
})
})
})