From 6cfb876d5466d58a20c629b50819eff251a27255 Mon Sep 17 00:00:00 2001 From: Evan Lucas Date: Thu, 11 May 2017 10:35:24 -0500 Subject: [PATCH] test: add regression test for immediate socket errors This test ensures that a http client request with the default agent that has a socket that is immediately destroyed can still be caught by adding an error event listener to the request object. PR-URL: https://github.com/nodejs/node/pull/12854 Fixes: https://github.com/nodejs/node/issues/12841 Reviewed-By: Colin Ihrig Reviewed-By: Benjamin Gruenbaum Reviewed-By: James M Snell Reviewed-By: Ben Noordhuis --- test/parallel/test-http-client-immediate-error.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 test/parallel/test-http-client-immediate-error.js diff --git a/test/parallel/test-http-client-immediate-error.js b/test/parallel/test-http-client-immediate-error.js new file mode 100644 index 00000000000000..9fbe052efd4104 --- /dev/null +++ b/test/parallel/test-http-client-immediate-error.js @@ -0,0 +1,12 @@ +'use strict'; + +// Make sure http.request() can catch immediate errors in +// net.createConnection(). + +const common = require('../common'); +const assert = require('assert'); +const http = require('http'); +const req = http.get({ host: '127.0.0.1', port: 1 }); +req.on('error', common.mustCall((err) => { + assert.strictEqual(err.code, 'ECONNREFUSED'); +}));