more tests working

This commit is contained in:
Manuel Araoz 2015-04-13 17:31:00 -03:00
parent c8e680eb01
commit 6691f0b4b5
4 changed files with 18 additions and 13 deletions

View File

@ -23,7 +23,7 @@ Blocks.setNode = function(aNode) {
* Finds a block by its hash * Finds a block by its hash
*/ */
Blocks.blockHashParam = function(req, res, next, blockHash) { Blocks.blockHashParam = function(req, res, next, blockHash) {
node.getBlock(blockHash) node.blockService.getBlock(blockHash)
.then(function(block) { .then(function(block) {
req.block = block; req.block = block;
}) })

View File

@ -11,6 +11,9 @@ describe('BitcoreHTTP', function() {
// mocks // mocks
var opts = { var opts = {
BitcoreNode: {
LevelUp: './test-db'
},
port: 1234 port: 1234
}; };
var nodeMock; var nodeMock;
@ -23,7 +26,7 @@ describe('BitcoreHTTP', function() {
should.exist(http); should.exist(http);
}); });
it('from create', function() { it('from create', function() {
var http = new BitcoreHTTP.create(); var http = new BitcoreHTTP.create(opts);
should.exist(http); should.exist(http);
}); });
}); });

View File

@ -25,26 +25,28 @@ describe('BitcoreHTTP v1 blocks routes', function() {
return mockBlocks[hash]; return mockBlocks[hash];
}; };
var last3 = _.keys(mockBlocks).splice(-3).map(blockForHash); var last3 = _.keys(mockBlocks).splice(-3).map(blockForHash);
var some2 = _.keys(mockBlocks).splice(2,2).map(blockForHash); var some2 = _.keys(mockBlocks).splice(2, 2).map(blockForHash);
var nodeMock, app, agent; var nodeMock, app, agent;
var blockList = _.values(mockBlocks); var blockList = _.values(mockBlocks);
beforeEach(function() { beforeEach(function() {
nodeMock = new EventEmitter(); nodeMock = new EventEmitter();
nodeMock.getBlock = function(blockHash) { nodeMock.blockService = {};
var block; nodeMock.blockService.resolveBlock = function(block, blockHash) {
if (typeof blockHash === 'number') {
var height = blockHash;
block = mockBlocks[_.keys(mockBlocks)[height - 100000]];
} else {
block = mockBlocks[blockHash];
}
if (_.isUndefined(block)) { if (_.isUndefined(block)) {
return Promise.reject(new BitcoreNode.errors.Blocks.NotFound(blockHash)); return Promise.reject(new BitcoreNode.errors.Blocks.NotFound(blockHash));
} }
return Promise.resolve(block); return Promise.resolve(block);
};
nodeMock.blockService.getBlockByHeight = function(height) {
var block = mockBlocks[_.keys(mockBlocks)[height - 100000]];
return this.resolveBlock(block, height);
};
nodeMock.blockService.getBlock = function(blockHash) {
var block = mockBlocks[blockHash];
return this.resolveBlock(block, blockHash);
}; };
nodeMock.getLatestBlock = function() { nodeMock.blockService.getLatest = function() {
return Promise.resolve(lastBlock); return Promise.resolve(lastBlock);
}; };
nodeMock.listBlocks = function(from, to, offset, limit) { nodeMock.listBlocks = function(from, to, offset, limit) {

View File

@ -117,7 +117,7 @@ BitcoreNode.create = function(opts) {
var networkMonitor = NetworkMonitor.create(bus, opts.NetworkMonitor); var networkMonitor = NetworkMonitor.create(bus, opts.NetworkMonitor);
var database = Promise.promisifyAll( var database = Promise.promisifyAll(
new LevelUp(opts.LevelUp) new LevelUp(opts.LevelUp || './db')
); );
var rpc = Promise.promisifyAll(new RPC(opts.RPC)); var rpc = Promise.promisifyAll(new RPC(opts.RPC));