summaryrefslogtreecommitdiff
path: root/test/parallel/test-http-agent-timeout-option.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/parallel/test-http-agent-timeout-option.js')
-rw-r--r--test/parallel/test-http-agent-timeout-option.js34
1 files changed, 20 insertions, 14 deletions
diff --git a/test/parallel/test-http-agent-timeout-option.js b/test/parallel/test-http-agent-timeout-option.js
index 4fcfc1f1da..3c694a0ef7 100644
--- a/test/parallel/test-http-agent-timeout-option.js
+++ b/test/parallel/test-http-agent-timeout-option.js
@@ -1,23 +1,29 @@
'use strict';
const { expectsError, mustCall } = require('../common');
-const { Agent, get } = require('http');
+const { Agent, get, createServer } = require('http');
// Test that the `'timeout'` event is emitted on the `ClientRequest` instance
// when the socket timeout set via the `timeout` option of the `Agent` expires.
-const request = get({
- agent: new Agent({ timeout: 500 }),
- // Non-routable IP address to prevent the connection from being established.
- host: '192.0.2.1'
-});
-
-request.on('error', expectsError({
- type: Error,
- code: 'ECONNRESET',
- message: 'socket hang up'
+const server = createServer(mustCall(() => {
+ // Never respond.
}));
-request.on('timeout', mustCall(() => {
- request.abort();
-}));
+server.listen(() => {
+ const request = get({
+ agent: new Agent({ timeout: 500 }),
+ port: server.address().port
+ });
+
+ request.on('error', expectsError({
+ type: Error,
+ code: 'ECONNRESET',
+ message: 'socket hang up'
+ }));
+
+ request.on('timeout', mustCall(() => {
+ request.abort();
+ server.close();
+ }));
+});