mirror of https://github.com/nodejs/node.git
62 lines
1.6 KiB
JavaScript
62 lines
1.6 KiB
JavaScript
'use strict';
|
|
|
|
const common = require('../common');
|
|
const http = require('http');
|
|
const assert = require('assert');
|
|
|
|
{
|
|
const server = http.createServer(common.mustCall(function(req, res) {
|
|
req.on('aborted', common.mustCall(function() {
|
|
assert.strictEqual(this.aborted, true);
|
|
}));
|
|
req.on('error', common.mustCall(function(err) {
|
|
assert.strictEqual(err.code, 'ECONNRESET');
|
|
assert.strictEqual(err.message, 'aborted');
|
|
server.close();
|
|
}));
|
|
assert.strictEqual(req.aborted, false);
|
|
res.write('hello');
|
|
}));
|
|
|
|
server.listen(0, common.mustCall(() => {
|
|
const req = http.get({
|
|
port: server.address().port,
|
|
headers: { connection: 'keep-alive' }
|
|
}, common.mustCall((res) => {
|
|
res.on('aborted', common.mustCall(() => {
|
|
assert.strictEqual(res.aborted, true);
|
|
}));
|
|
res.on('error', common.expectsError({
|
|
code: 'ECONNRESET',
|
|
message: 'aborted'
|
|
}));
|
|
req.abort();
|
|
}));
|
|
}));
|
|
}
|
|
|
|
{
|
|
// Don't crash if no 'error' handler on server request.
|
|
|
|
const server = http.createServer(common.mustCall(function(req, res) {
|
|
req.on('aborted', common.mustCall(function() {
|
|
assert.strictEqual(this.aborted, true);
|
|
server.close();
|
|
}));
|
|
assert.strictEqual(req.aborted, false);
|
|
res.write('hello');
|
|
}));
|
|
|
|
server.listen(0, common.mustCall(() => {
|
|
const req = http.get({
|
|
port: server.address().port,
|
|
headers: { connection: 'keep-alive' }
|
|
}, common.mustCall((res) => {
|
|
res.on('aborted', common.mustCall(() => {
|
|
assert.strictEqual(res.aborted, true);
|
|
}));
|
|
req.abort();
|
|
}));
|
|
}));
|
|
}
|