+++ /dev/null
-var common = require('../common');
-var assert = require('assert');
-var spawn = require('child_process').spawn;
-var net = require('net');
-
-function expect(activeHandles, activeRequests) {
- assert.equal(process._getActiveHandles().length, activeHandles);
- assert.equal(process._getActiveRequests().length, activeRequests);
-}
-
-var handles = [];
-
-(function() {
- expect(0, 0);
- var server = net.createServer().listen(common.PORT);
- expect(1, 0);
- server.close();
- expect(1, 0); // server handle doesn't shut down until next tick
- handles.push(server);
-})();
-
-(function() {
- function onlookup() {
- setImmediate(function() {
- assert.equal(process._getActiveRequests().length, 0);
- });
- };
-
- expect(1, 0);
- var conn = net.createConnection(common.PORT);
- conn.on('lookup', onlookup);
- conn.on('error', function() { assert(false); });
- expect(2, 1);
- conn.destroy();
- expect(2, 1); // client handle doesn't shut down until next tick
- handles.push(conn);
-})();
-
-(function() {
- var n = 0;
-
- handles.forEach(function(handle) {
- handle.once('close', onclose);
- });
- function onclose() {
- if (++n === handles.length) {
- // Allow the server handle a few loop iterations to wind down.
- setImmediate(function() {
- setImmediate(function() {
- assert.equal(process._getActiveHandles().length, 0);
- });
- });
- }
- }
-})();