e8f79d43f9
closes #517 add index test for Application add app.toJSON test add test for app.inspect() add tests for app.use() add tests for app.onerror() add tests for app.respond() add tests for app.context() add tests for app.request() add tests for app.response refactor for non-existence of test/app...js no need for *.js use helpers/ dir for non-tests
42 lines
1.4 KiB
JavaScript
42 lines
1.4 KiB
JavaScript
|
|
'use strict';
|
|
|
|
const context = require('../helpers/context');
|
|
|
|
describe('ctx.acceptsEncodings()', function(){
|
|
describe('with no arguments', function(){
|
|
describe('when Accept-Encoding is populated', function(){
|
|
it('should return accepted types', function(){
|
|
const ctx = context();
|
|
ctx.req.headers['accept-encoding'] = 'gzip, compress;q=0.2';
|
|
ctx.acceptsEncodings().should.eql(['gzip', 'compress', 'identity']);
|
|
ctx.acceptsEncodings('gzip', 'compress').should.equal('gzip');
|
|
})
|
|
})
|
|
|
|
describe('when Accept-Encoding is not populated', function(){
|
|
it('should return identity', function(){
|
|
const ctx = context();
|
|
ctx.acceptsEncodings().should.eql(['identity']);
|
|
ctx.acceptsEncodings('gzip', 'deflate', 'identity').should.equal('identity');
|
|
})
|
|
})
|
|
})
|
|
|
|
describe('with multiple arguments', function(){
|
|
it('should return the best fit', function(){
|
|
const ctx = context();
|
|
ctx.req.headers['accept-encoding'] = 'gzip, compress;q=0.2';
|
|
ctx.acceptsEncodings('compress', 'gzip').should.eql('gzip');
|
|
ctx.acceptsEncodings('gzip', 'compress').should.eql('gzip');
|
|
})
|
|
})
|
|
|
|
describe('with an array', function(){
|
|
it('should return the best fit', function(){
|
|
const ctx = context();
|
|
ctx.req.headers['accept-encoding'] = 'gzip, compress;q=0.2';
|
|
ctx.acceptsEncodings(['compress', 'gzip']).should.eql('gzip');
|
|
})
|
|
})
|
|
})
|