From 24a2885ebf0e92721addecd137a24e1533ff0868 Mon Sep 17 00:00:00 2001 From: Rolf Timmermans Date: Mon, 28 Aug 2017 22:15:24 +0200 Subject: [PATCH 1/2] Add accessor for socket state. --- lib/index.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/index.js b/lib/index.js index 32438d7c..8c1d8bb6 100644 --- a/lib/index.js +++ b/lib/index.js @@ -412,6 +412,13 @@ Object.keys(opts).forEach(function(name){ }); }); +/** + * Return true if socket state is closed. + */ +Socket.prototype.__defineGetter__("closed", function() { + return this._zmq.state === zmq.STATE_CLOSED; +}); + /** * Async bind. * From d6569bd64ef2a2d1699b7cbfd545db93acd0100f Mon Sep 17 00:00:00 2001 From: Rolf Timmermans Date: Sat, 2 Sep 2017 10:31:54 +0200 Subject: [PATCH 2/2] Add simple test for socket.closed. --- test/socket.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/socket.js b/test/socket.js index c583b869..d6540041 100644 --- a/test/socket.js +++ b/test/socket.js @@ -35,7 +35,9 @@ describe('socket', function(){ }); it('should close', function(){ + sock.closed.should.equal(false); sock.close(); + sock.closed.should.equal(true); }); it('should support options', function(){