You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

45 lines
1.4 KiB

var assert = require('assert'),
request = require('request'),
vows = require('vows'),
union = require('../');
vows.describe('union/properties').addBatch({
'When using `union`': {
'with a server that responds to requests': {
topic: function () {
var callback = this.callback;
var server = union.createServer({
before: [
function (req, res) {
callback(null, req, res);
res.writeHead(200, { 'content-type': 'text' });
res.end();
}
]
});
server.listen(9092, function () {
request('http://localhost:9092/');
});
},
'the `req` should have a proper `httpVersion` set': function (err, req) {
assert.isNull(err);
assert.equal(req.httpVersion, '1.1');
},
'the `req` should have a proper `httpVersionMajor` set': function (err, req) {
assert.isNull(err);
assert.equal(req.httpVersionMajor, 1);
},
'the `req` should have a proper `httpVersionMinor` set': function (err, req) {
assert.isNull(err);
assert.equal(req.httpVersionMinor, 1);
},
'the `req` should have proper `socket` reference set': function (err, req) {
var net = require('net');
assert.isNull(err);
assert.isTrue(req.socket instanceof net.Socket);
}
}
}
}).export(module);