From f1d796f47b054f9123765f4045cc83b59bed4dfd Mon Sep 17 00:00:00 2001 From: dignifiedquire Date: Fri, 31 Jul 2015 23:13:05 +0200 Subject: [PATCH] Fix swarm.closeConns --- package.json | 1 + src/swarm.js | 4 ++-- tests/swarm-test.js | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 07a0fc1d..112c5242 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "code": "^1.4.1", "lab": "^5.13.0", "precommit-hook": "^3.0.0", + "sinon": "^1.15.4", "standard": "^4.5.2", "stream-pair": "^1.0.3" }, diff --git a/src/swarm.js b/src/swarm.js index b35bef3c..89beaa1d 100644 --- a/src/swarm.js +++ b/src/swarm.js @@ -150,9 +150,9 @@ function Swarm () { if (number === 0) { cb() } var c = new Counter(number, cb) - keys.map(function (key) { - c.hit() + keys.forEach(function (key) { self.connections[key].conn.end() + c.hit() }) } diff --git a/tests/swarm-test.js b/tests/swarm-test.js index 28e87d58..b8a5c900 100644 --- a/tests/swarm-test.js +++ b/tests/swarm-test.js @@ -1,5 +1,6 @@ var Lab = require('lab') var Code = require('code') +var sinon = require('sinon') var lab = exports.lab = Lab.script() var experiment = lab.experiment @@ -85,6 +86,19 @@ experiment('BASICS', function () { }) }) }) + + experiment('Swarm.closeConns', function () { + test('calls end on all connections', function (done) { + swarmA.openConnection(peerB, function () { + var key = Object.keys(swarmA.connections)[0] + sinon.spy(swarmA.connections[key].conn, 'end') + swarmA.closeConns(function () { + expect(swarmA.connections[key].conn.end.called).to.be.equal(true) + done() + }) + }) + }) + }) }) experiment('BASE', function () {