win,test: fix test-process-active-wraps.js
authorColin Ihrig <cjihrig@gmail.com>
Thu, 8 Jan 2015 19:42:41 +0000 (20:42 +0100)
committerEvan Lucas <bertbelder@gmail.com>
Thu, 8 Jan 2015 19:48:57 +0000 (20:48 +0100)
b636ba8 broke this test, because it now takes a loop iteration or two
to resolve the loopback address. That consequence is that the TCPWrap
handle that we *don't* want to see is created a bit later, and also
destroyed later, so when we assert that the active handle list is empty
the TCPWrap object is still "busy" being closed.

Wait one extra loop iteration before checking there are no more active
handles. This allows name resolution and clean-up to finish before the
assertion.

BUG: https://github.com/iojs/io.js/issues/246
PR-URL: https://github.com/joyent/node/pull/8998
Reviewed-By: Bert Belder <bertbelder@gmail.com>
test/parallel/test-process-active-wraps.js

index bd4941b..05996b4 100644 (file)
@@ -49,7 +49,7 @@ var handles = [];
 
   expect(1, 0);
   var conn = net.createConnection(common.PORT);
-  conn.on('lookup', onlookup); 
+  conn.on('lookup', onlookup);
   conn.on('error', function() { assert(false); });
   expect(2, 1);
   conn.destroy();
@@ -65,8 +65,11 @@ var handles = [];
   });
   function onclose() {
     if (++n === handles.length) {
+      // Allow the server handle a few loop iterations to wind down.
       setImmediate(function() {
-        assert.equal(process._getActiveHandles().length, 0);
+        setImmediate(function() {
+          assert.equal(process._getActiveHandles().length, 0);
+        });
       });
     }
   }