From a2f0c05b244396f3df877b40e7b250d3194b429e Mon Sep 17 00:00:00 2001 From: Rob Wu Date: Sun, 23 Aug 2015 10:58:58 +0200 Subject: [PATCH] Add more tests for setHeaders --- test/test.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/test/test.js b/test/test.js index 935e06f..493853e 100644 --- a/test/test.js +++ b/test/test.js @@ -496,6 +496,50 @@ describe('setHeaders', function() { 'x-powered-by': 'CORS Anywhere' }, done); }); + + it('GET /example.com should replace header', function(done) { + request(cors_anywhere) + .get('/example.com/echoheaders') + .set('x-powered-by', 'should be replaced') + .expect('Access-Control-Allow-Origin', '*') + .expectJSON({ + host: 'example.com', + 'x-powered-by': 'CORS Anywhere' + }, done); + }); +}); + +describe('setHeaders + removeHeaders', function() { + before(function() { + // setHeaders takes precedence over removeHeaders + cors_anywhere = createServer({ + removeHeaders: ['x-powered-by'], + setHeaders: {'x-powered-by': 'CORS Anywhere'}, + }); + cors_anywhere_port = cors_anywhere.listen(0).address().port; + }); + after(stopServer); + + it('GET /example.com', function(done) { + request(cors_anywhere) + .get('/example.com/echoheaders') + .expect('Access-Control-Allow-Origin', '*') + .expectJSON({ + host: 'example.com', + 'x-powered-by': 'CORS Anywhere' + }, done); + }); + + it('GET /example.com should replace header', function(done) { + request(cors_anywhere) + .get('/example.com/echoheaders') + .set('x-powered-by', 'should be replaced') + .expect('Access-Control-Allow-Origin', '*') + .expectJSON({ + host: 'example.com', + 'x-powered-by': 'CORS Anywhere' + }, done); + }); }); describe('httpProxyOptions.xfwd=false', function() {