diff --git a/lib/PeerManager.js b/lib/PeerManager.js index c9f692446..99be6b306 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 a4a03918d..3585c617b 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", diff --git a/test/test.PeerManager.js b/test/test.PeerManager.js index ab6565d4c..d2c4ec829 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); + }); });