fix some more tests
This commit is contained in:
parent
035bd6f351
commit
db17accf98
18
lib/node.js
18
lib/node.js
@ -22,8 +22,11 @@ var BlockChain = require('./blockchain');
|
|||||||
var genesisBlocks = require('./data/genesis');
|
var genesisBlocks = require('./data/genesis');
|
||||||
|
|
||||||
var BitcoreNode = function(bus, networkMonitor, blockService, transactionService, addressService) {
|
var BitcoreNode = function(bus, networkMonitor, blockService, transactionService, addressService) {
|
||||||
$.checkArgument(bus);
|
$.checkArgument(bus, 'bus is required');
|
||||||
$.checkArgument(networkMonitor);
|
$.checkArgument(networkMonitor, 'networkMonitor is required');
|
||||||
|
$.checkArgument(blockService, 'blockService is required');
|
||||||
|
$.checkArgument(transactionService, 'transactionService is required');
|
||||||
|
$.checkArgument(addressService, 'addressService is required');
|
||||||
var self = this;
|
var self = this;
|
||||||
this.bus = bus;
|
this.bus = bus;
|
||||||
this.networkMonitor = networkMonitor;
|
this.networkMonitor = networkMonitor;
|
||||||
@ -97,12 +100,6 @@ var BitcoreNode = function(bus, networkMonitor, blockService, transactionService
|
|||||||
};
|
};
|
||||||
util.inherits(BitcoreNode, EventEmitter);
|
util.inherits(BitcoreNode, EventEmitter);
|
||||||
|
|
||||||
BitcoreNode.prototype.requestFromTip = function() {
|
|
||||||
var locator = this.blockchain.getBlockLocator();
|
|
||||||
console.log('requesting blocks, locator size:', locator.length);
|
|
||||||
this.networkMonitor.requestBlocks(locator);
|
|
||||||
};
|
|
||||||
|
|
||||||
BitcoreNode.create = function(opts) {
|
BitcoreNode.create = function(opts) {
|
||||||
opts = opts || {};
|
opts = opts || {};
|
||||||
|
|
||||||
@ -153,6 +150,11 @@ BitcoreNode.prototype.stop = function(reason) {
|
|||||||
this.networkMonitor.stop(reason);
|
this.networkMonitor.stop(reason);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
BitcoreNode.prototype.requestFromTip = function() {
|
||||||
|
var locator = this.blockchain.getBlockLocator();
|
||||||
|
console.log('requesting blocks, locator size:', locator.length);
|
||||||
|
this.networkMonitor.requestBlocks(locator);
|
||||||
|
};
|
||||||
|
|
||||||
BitcoreNode.prototype.sync = function() {
|
BitcoreNode.prototype.sync = function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|||||||
14
test/node.js
14
test/node.js
@ -13,16 +13,20 @@ Promise.longStackTraces();
|
|||||||
describe('BitcoreNode', function() {
|
describe('BitcoreNode', function() {
|
||||||
|
|
||||||
// mocks
|
// mocks
|
||||||
var busMock, nmMock;
|
var node, busMock, nmMock, bsMock, tsMock, asMock;
|
||||||
beforeEach(function() {
|
beforeEach(function() {
|
||||||
busMock = new EventBus();
|
busMock = new EventBus();
|
||||||
nmMock = new EventEmitter();
|
nmMock = new EventEmitter();
|
||||||
nmMock.start = function() {};
|
nmMock.start = function() {};
|
||||||
|
bsMock = {};
|
||||||
|
tsMock = {};
|
||||||
|
asMock = {};
|
||||||
|
node = new BitcoreNode(busMock, nmMock, bsMock, tsMock, asMock);
|
||||||
});
|
});
|
||||||
describe('instantiates', function() {
|
describe('instantiates', function() {
|
||||||
it('from constructor', function() {
|
it('from constructor', function() {
|
||||||
var node = new BitcoreNode(busMock, nmMock);
|
var n = new BitcoreNode(busMock, nmMock, bsMock, tsMock, asMock);
|
||||||
should.exist(node);
|
should.exist(n);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('from create', function() {
|
it('from create', function() {
|
||||||
@ -32,17 +36,15 @@ describe('BitcoreNode', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('starts', function() {
|
it('starts', function() {
|
||||||
var node = new BitcoreNode(busMock, nmMock);
|
node.start();
|
||||||
node.start.bind(node).should.not.throw();
|
node.start.bind(node).should.not.throw();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('broadcasts errors from network monitor', function(cb) {
|
it('broadcasts errors from network monitor', function(cb) {
|
||||||
var node = new BitcoreNode(busMock, nmMock);
|
|
||||||
node.on('error', cb);
|
node.on('error', cb);
|
||||||
nmMock.emit('error');
|
nmMock.emit('error');
|
||||||
});
|
});
|
||||||
it('exposes all events from the event bus', function(cb) {
|
it('exposes all events from the event bus', function(cb) {
|
||||||
var node = new BitcoreNode(busMock, nmMock);
|
|
||||||
node.on('foo', cb);
|
node.on('foo', cb);
|
||||||
busMock.emit('foo');
|
busMock.emit('foo');
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user