koa-lite/test/response/set.js

48 lines
1.1 KiB
JavaScript
Raw Permalink Normal View History

'use strict';
var context = require('../context');
var should = require('should');
describe('ctx.set(name, val)', function(){
it('should set a field value', function(){
var ctx = context();
ctx.set('x-foo', 'bar');
ctx.response.header['x-foo'].should.equal('bar');
})
it('should coerce to a string', function(){
var ctx = context();
ctx.set('x-foo', 5);
ctx.response.header['x-foo'].should.equal('5');
})
2014-07-06 08:43:14 +00:00
it('should set a field value of array', function(){
var ctx = context();
ctx.set('x-foo', ['foo', 'bar']);
ctx.response.header['x-foo'].should.eql([ 'foo', 'bar' ]);
})
describe('after header sent', function(){
it('should ignore', function(){
var ctx = context(null, { headersSent: true });
ctx.set('foo', 'bar');
should.not.exist(ctx.response.header.foo);
})
})
})
describe('ctx.set(object)', function(){
it('should set multiple fields', function(){
var ctx = context();
ctx.set({
foo: '1',
bar: '2'
});
ctx.response.header.foo.should.equal('1');
ctx.response.header.bar.should.equal('2');
})
2014-07-06 08:43:14 +00:00
})