self.watcher.stop();
}
- while (self.fd) {
+ while (typeof self.fd === 'number') {
try {
var peerInfo = accept(self.fd);
} catch (e) {
Server.prototype.close = function() {
var self = this;
- if (!self.fd) throw new Error('Not running');
+ if (typeof self.fd !== 'number') throw new Error('Not running');
self.watcher.stop();
--- /dev/null
+var common = require('../common');
+var assert = require('assert');
+var net = require('net');
+
+process.stdin.destroy();
+
+var accepted = null;
+var server = net.createServer(function(socket) {
+ console.log('accepted');
+ accepted = socket;
+ socket.end();
+ server.close();
+});
+
+
+server.listen(common.PORT, function() {
+ console.log('listening...');
+ assert.equal(server.fd, 0);
+
+ net.createConnection(common.PORT);
+});
+
+
+process.on('exit', function() {
+ assert.ok(accepted);
+});
+