arnaucube
arnaucube/socketioMEANseedPublic Self-hosted repository
socketioMEANseed/www/node_modules/union/test/after-test.js
www/node_modules/union/test/after-test.jsRaw
 1var assert = require('assert'),
 2    vows = require('vows'),
 3    request = require('request'),
 4    union = require('../');
 5
 6function stream_callback(cb) {
 7  return function () {
 8    var stream   = new union.ResponseStream();
 9
10    stream.once("pipe", function (req) {
11      return cb ? cb(null,req) : undefined;
12    });
13
14    return stream;
15  };
16}
17
18vows.describe('union/after').addBatch({
19  'When using `union`': {
20    'a union server with after middleware': {
21      topic: function () {
22        var self = this;
23
24        union.createServer({
25          after: [ stream_callback(), stream_callback(self.callback) ]
26        }).listen(9000, function () {
27          request.get('http://localhost:9000');
28        });
29      },
30      'should preserve the request until the last call': function (req) {
31        assert.equal(req.req.httpVersion, '1.1');
32        assert.equal(req.req.url, '/');
33        assert.equal(req.req.method, 'GET');
34      }
35    }
36  }
37}).export(module);