Sha256: 2d32e9303d21cb25b219f0953e46f432941e74eadc80109afff66f645e565831

Contents?: true

Size: 1.84 KB

Versions: 26

Compression:

Stored size: 1.84 KB

Contents

var connect = require('connect'),
    helpers = require('./helpers'),
    assert = require('assert'),
    http = require('http');

function server(headers) {
    headers = headers || {};
    headers['Content-Type'] = 'text/plain';
    return helpers.run(
        connect.gzip(),
        connect.createServer(
            function(req, res){
                res.writeHead(200, headers);
                res.end('can be compressed');
            })
    );
}

module.exports = {
    'test no compression': function(){
        var req = server().request('GET', '/', { });
        req.buffer = true;
        req.addListener('response', function(res){
            res.addListener('end', function(){
                assert.equal('can be compressed', res.body);
            });
        });
        req.end();
    },
    'test compression': function(){
        var req = server().request('GET', '/', { 'Accept-Encoding': 'deflate, gzip' });
        req.buffer = true;
        req.addListener('response', function(res){
            res.addListener('end', function(){
                assert.equal('gzip', res.headers['content-encoding']);
                // we could uncompress in this test. for now, check
                // only that it's not the original body:
                assert.notEqual('can be compressed', res.body);
            });
        });
        req.end();
    },
    'test no compression with other content-encoding': function(){
        var req = server({ 'Content-Encoding': 'bogon' }).
            request('GET', '/', { 'Accept-Encoding': 'bogon, gzip' });
        req.buffer = true;
        req.addListener('response', function(res){
            res.addListener('end', function(){
                assert.equal('bogon', res.headers['content-encoding']);
                assert.equal('can be compressed', res.body);
            });
        });
        req.end();
    }
}

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
vulcan-0.8.2 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.8.1 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.8.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.7.2 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.7.1 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.7.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.6.1 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.6.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.5.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.4.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.3.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.5 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.4 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.3 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.2 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.1 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.2.0 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.1.6 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.1.5 server/node_modules/connect-form/support/connect/test/gzip.test.js
vulcan-0.1.4 server/node_modules/connect-form/support/connect/test/gzip.test.js