| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- (function() {
- var configuration, preferredEncodings, testConfigurations, testCorrectEncoding, _i, _len,
- _this = this;
- preferredEncodings = require('../lib/encoding').preferredEncodings;
- this["Should return identity encoding when no encoding is provided"] = function(test) {
- test.deepEqual(preferredEncodings(null), ['identity']);
- return test.done();
- };
- this["Should include the identity encoding even if not explicity listed"] = function(test) {
- test.ok(preferredEncodings('gzip').indexOf('identity') !== -1);
- return test.done();
- };
- this["Should not return identity encoding if q = 0"] = function(test) {
- test.ok(preferredEncodings('identity;q=0').indexOf('identity') === -1);
- return test.done();
- };
- testCorrectEncoding = function(c) {
- return _this["Should return " + c.selected + " for accept-encoding header " + c.accept + " with provided encoding " + c.provided] = function(test) {
- test.deepEqual(preferredEncodings(c.accept, c.provided), c.selected);
- return test.done();
- };
- };
- testConfigurations = [
- {
- accept: 'gzip',
- provided: ['identity', 'gzip'],
- selected: ['gzip', 'identity']
- }, {
- accept: 'gzip, compress',
- provided: ['compress'],
- selected: ['compress']
- }, {
- accept: 'deflate',
- provided: ['gzip', 'identity'],
- selected: ['identity']
- }, {
- accept: '*',
- provided: ['identity', 'gzip'],
- selected: ['identity', 'gzip']
- }, {
- accept: 'gzip, compress',
- provided: ['compress', 'identity'],
- selected: ['compress', 'identity']
- }, {
- accept: 'gzip;q=0.8, identity;q=0.5, *;q=0.3',
- provided: ['identity', 'gzip', 'compress'],
- selected: ['gzip', 'identity', 'compress']
- }, {
- accept: 'gzip;q=0.8, compress',
- provided: ['gzip', 'compress'],
- selected: ['compress', 'gzip']
- }, {
- accept: 'gzip;q=0.8, compress',
- provided: null,
- selected: ['compress', 'gzip', 'identity']
- }
- ];
- for (_i = 0, _len = testConfigurations.length; _i < _len; _i++) {
- configuration = testConfigurations[_i];
- testCorrectEncoding(configuration);
- }
- }).call(this);
|