You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
793 B

'use strict';
var common = require('../common');
var assert = require('assert');
var http = require('http');
var net = require('net');
var caughtError = false;
var options = {
host: '127.0.0.1',
port: common.PORT
};
// start a tcp server that closes incoming connections immediately
var server = net.createServer(function(client) {
client.destroy();
server.close();
});
server.listen(options.port, options.host, onListen);
// do a GET request, expect it to fail
function onListen() {
var req = http.request(options, function(res) {
assert.ok(false, 'this should never run');
});
req.on('error', function(err) {
assert.equal(err.code, 'ECONNRESET');
caughtError = true;
});
req.end();
}
process.on('exit', function() {
assert.equal(caughtError, true);
});