diff --git a/benchmarks/blockhandler.js b/benchmarks/blockhandler.js index 5d3f97302..f1ba07c4a 100644 --- a/benchmarks/blockhandler.js +++ b/benchmarks/blockhandler.js @@ -2,18 +2,18 @@ var benchmark = require('benchmark'); var async = require('async'); -var memdown = require('memdown'); -var Block = require('../lib/block'); -var AddressModule = require('../lib/modules/address'); -var DB = require('../lib/db'); +var sinon = require('sinon'); +var bitcore = require('bitcore'); +var Block = bitcore.Block; +var AddressService = require('../lib/services/address'); var maxTime = 20; var blockData1 = require('./data/block-367238.json'); var blockData2 = require('./data/block-367239.json'); var blockData3 = require('./data/block-367240.json'); -console.log('Benchmarking Address Block Handler'); -console.log('----------------------------------'); +console.log('Address Service Block Handler'); +console.log('-----------------------------'); async.series([ function(next) { @@ -25,15 +25,21 @@ async.series([ Block.fromBuffer(new Buffer(blockData3, 'hex')) ]; var blocksLength = 3; - var db = new DB({store: memdown}); - var addressModule = new AddressModule({db: db}); + var node = { + services: { + bitcoind : { + on: sinon.stub() + } + } + }; + var addressService = new AddressService({node: node}); function blockHandler(deffered) { if (c >= blocksLength) { c = 0; } var block = blocks[c]; - addressModule.blockHandler(block, true, function(err, operations) { + addressService.blockHandler(block, true, function(err, operations) { if (err) { throw err; } diff --git a/benchmarks/index.js b/benchmarks/index.js index e41c43a60..71e308640 100644 --- a/benchmarks/index.js +++ b/benchmarks/index.js @@ -5,7 +5,7 @@ var bitcoin = require('bitcoin'); var async = require('async'); var maxTime = 20; -console.log('Benchmarking Bitcoind.js native interface versus Bitcoind JSON RPC interface'); +console.log('Bitcoin Service native interface vs. Bitcoin JSON RPC interface'); console.log('----------------------------------------------------------------------'); // To run the benchmarks a fully synced Bitcore Core directory is needed. The RPC comands @@ -26,22 +26,29 @@ var fixtureData = { ] }; -var bitcoind = require('../').daemon({ - datadir: process.env.BITCORENODE_DIR || '~/.bitcoin', - network: 'testnet' +var bitcoind = require('../').services.Bitcoin({ + node: { + datadir: process.env.HOME + '/.bitcoin', + network: { + name: 'testnet' + } + } }); bitcoind.on('error', function(err) { - bitcoind.log('error="%s"', err.message); + console.error(err.message); }); -bitcoind.on('open', function(status) { - bitcoind.log('status="%s"', status); +bitcoind.start(function(err) { + if (err) { + throw err; + } + console.log('Bitcoin Core started'); }); bitcoind.on('ready', function() { - bitcoind.log('status="%s"', 'chaintip ready.'); + console.log('Bitcoin Core ready'); var client = new bitcoin.Client({ host: 'localhost', @@ -147,8 +154,16 @@ bitcoind.on('ready', function() { .run(); } ], function(err) { + if (err) { + throw err; + } console.log('Finished'); - bitcoind.stop(); - process.exit(); + bitcoind.stop(function(err) { + if (err) { + console.error('Fail to stop services: ' + err); + process.exit(1); + } + process.exit(0); + }); }); });