From bf1b4bdcc79e64078aac709dc955cfbea7d37b57 Mon Sep 17 00:00:00 2001 From: Gordon Hall Date: Mon, 28 Apr 2014 12:23:56 -0400 Subject: [PATCH 1/2] replace extend with underscore and use it's version of extend from within PeerManager --- lib/PeerManager.js | 4 ++-- package.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/PeerManager.js b/lib/PeerManager.js index c9f6924..99be6b3 100644 --- a/lib/PeerManager.js +++ b/lib/PeerManager.js @@ -1,5 +1,5 @@ var imports = require('soop').imports(); -var extend = imports.extend || require('extend'); +var _ = imports._ || require('underscore'); var log = imports.log || require('../util/log'); var bitcoreDefaults = imports.config || require('../config'); var Connection = imports.Connection || require ('./Connection'); @@ -12,7 +12,7 @@ GetAdjustedTime = imports.GetAdjustedTime || function () { function PeerManager(config) { // extend defaults with config - this.config = extend(true, config || {}, bitcoreDefaults); + this.config = _.extend(bitcoreDefaults, config || {}); this.active = false; this.timer = null; diff --git a/package.json b/package.json index a4a0391..3585c61 100644 --- a/package.json +++ b/package.json @@ -71,8 +71,8 @@ "brfs": "=1.0.0", "chai": "=1.9.1", "uglifyify": "=1.2.3", - "extend": "~1.2.1", - "async": "~0.2.10" + "async": "~0.2.10", + "underscore": "~1.6.0" }, "devDependencies": { "grunt-contrib-watch": "~0.5.3", From 602c94265bde2302dbd92796cc26edb9f72f3ed1 Mon Sep 17 00:00:00 2001 From: Gordon Hall Date: Mon, 28 Apr 2014 12:33:34 -0400 Subject: [PATCH 2/2] add test for config extending properly --- test/test.PeerManager.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/test.PeerManager.js b/test/test.PeerManager.js index ab6565d..d2c4ec8 100644 --- a/test/test.PeerManager.js +++ b/test/test.PeerManager.js @@ -30,6 +30,16 @@ describe('PeerManager', function() { pm.start(); pm.stop.bind(pm).should.not.throw(); }); + it('should extend default config with passed config', function() { + var pm = new PeerManager({ + proxy: { + host: 'localhost', + port: 9050 + } + }); + should.exist(pm.config.network); + should.exist(pm.config.proxy); + }); });