| 'use strict'; |
| const common = require('../common'); |
| const http = require('http'); |
| const assert = require('assert'); |
| |
| { |
| const server = http.createServer(common.mustCall((req, res) => { |
| assert.strictEqual(res.closed, false); |
| req.pipe(res); |
| res.on('error', common.mustNotCall()); |
| res.on('close', common.mustCall(() => { |
| assert.strictEqual(res.closed, true); |
| res.end('asd'); |
| process.nextTick(() => { |
| server.close(); |
| }); |
| })); |
| })).listen(0, () => { |
| http |
| .request({ |
| port: server.address().port, |
| method: 'PUT' |
| }) |
| .on('response', (res) => { |
| res.destroy(); |
| }) |
| .write('asd'); |
| }); |
| } |
| |
| { |
| const server = http.createServer(common.mustCall((req, res) => { |
| assert.strictEqual(res.closed, false); |
| req.pipe(res); |
| res.on('error', common.mustNotCall()); |
| res.on('close', common.mustCall(() => { |
| assert.strictEqual(res.closed, true); |
| process.nextTick(() => { |
| server.close(); |
| }); |
| })); |
| const err = new Error('Destroy test'); |
| res.destroy(err); |
| assert.strictEqual(res.errored, err); |
| })).listen(0, () => { |
| http |
| .request({ |
| port: server.address().port, |
| method: 'PUT' |
| }) |
| .on('error', common.mustCall()) |
| .write('asd'); |
| }); |
| |
| } |