var response = require('../context').response; var assert = require('assert'); describe('res.length', function(){ describe('when Content-Length is defined', function(){ it('should return a number', function(){ var res = response(); res.header['content-length'] = '120'; res.length.should.equal(120); }) }) }) describe('res.length', function(){ describe('when Content-Length is defined', function(){ it('should return a number', function(){ var res = response(); res.set('Content-Length', '1024'); res.length.should.equal(1024); }) }) describe('when Content-Length is not defined', function(){ describe('and a .body is set', function(){ it('should return a number', function(){ var res = response(); res.body = 'foo'; res.length.should.equal(3); res.body = new Buffer('foo'); res.length.should.equal(3); }) }) describe('and .body is not', function(){ it('should return undefined', function(){ var res = response(); assert(null == res.length); }) }) }) })