test: do not use public IPs for timeout testing
authorRich Trott <rtrott@gmail.com>
Thu, 25 Jun 2015 06:33:11 +0000 (23:33 -0700)
committerRich Trott <rtrott@gmail.com>
Tue, 28 Jul 2015 00:07:54 +0000 (17:07 -0700)
PR-URL: https://github.com/nodejs/io.js/pull/2057
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
test/internet/test-net-connect-timeout.js

index 60c2837..436d773 100644 (file)
@@ -2,8 +2,6 @@
 // This example attempts to time out before the connection is established
 // https://groups.google.com/forum/#!topic/nodejs/UE0ZbfLt6t8
 // https://groups.google.com/forum/#!topic/nodejs-dev/jR7-5UDqXkw
-//
-// TODO: how to do this without relying on the responses of specific sites?
 
 var common = require('../common');
 var net = require('net');
@@ -11,61 +9,34 @@ var assert = require('assert');
 
 var start = new Date();
 
-var gotTimeout0 = false;
-var gotTimeout1 = false;
+var gotTimeout = false;
 
-var gotConnect0 = false;
-var gotConnect1 = false;
+var gotConnect = false;
 
 var T = 100;
 
 
-// With DNS
+// 240.*.*.*.* is "reserved for future use"
+var socket = net.createConnection(9999, '240.0.0.0');
 
-var socket0 = net.createConnection(9999, 'google.com');
+socket.setTimeout(T);
 
-socket0.setTimeout(T);
-
-socket0.on('timeout', function() {
-  console.error('timeout');
-  gotTimeout0 = true;
-  var now = new Date();
-  assert.ok(now - start < T + 500);
-  socket0.destroy();
-});
-
-socket0.on('connect', function() {
-  console.error('connect');
-  gotConnect0 = true;
-  socket0.destroy();
-});
-
-
-// Without DNS
-
-var socket1 = net.createConnection(9999, '24.24.24.24');
-
-socket1.setTimeout(T);
-
-socket1.on('timeout', function() {
+socket.on('timeout', function() {
   console.error('timeout');
-  gotTimeout1 = true;
+  gotTimeout = true;
   var now = new Date();
   assert.ok(now - start < T + 500);
-  socket1.destroy();
+  socket.destroy();
 });
 
-socket1.on('connect', function() {
+socket.on('connect', function() {
   console.error('connect');
-  gotConnect1 = true;
-  socket1.destroy();
+  gotConnect = true;
+  socket.destroy();
 });
 
 
 process.on('exit', function() {
-  assert.ok(gotTimeout0);
-  assert.ok(!gotConnect0);
-
-  assert.ok(gotTimeout1);
-  assert.ok(!gotConnect1);
+  assert.ok(gotTimeout);
+  assert.ok(!gotConnect);
 });