1'use strict'; 2const common = require('../common'); 3const http = require('http'); 4const assert = require('assert'); 5const expected = { 6 '__proto__': null, 7 'testheader1': 'foo', 8 'testheader2': 'bar', 9 'testheader3': 'xyz' 10}; 11const server = http.createServer(common.mustCall((req, res) => { 12 let retval = res.setHeader('testheader1', 'foo'); 13 14 // Test that the setHeader returns the same response object. 15 assert.strictEqual(retval, res); 16 17 retval = res.setHeader('testheader2', 'bar').setHeader('testheader3', 'xyz'); 18 // Test that chaining works for setHeader. 19 assert.deepStrictEqual(res.getHeaders(), expected); 20 res.end('ok'); 21})); 22server.listen(0, () => { 23 http.get({ port: server.address().port }, common.mustCall((res) => { 24 res.on('data', () => {}); 25 res.on('end', common.mustCall(() => { 26 server.close(); 27 })); 28 })); 29}); 30