bitcoind: fix check reindex method not found

This commit is contained in:
Braydon Fuller 2016-04-18 15:52:35 -04:00
parent 3fed348cf7
commit bf67b932de
2 changed files with 15 additions and 7 deletions

View File

@ -479,11 +479,14 @@ Bitcoin.prototype._checkReindex = function(node, callback) {
}
if (node._reindex) {
interval = setInterval(function() {
node.client.syncPercentage(function(err, percentSynced) {
node.client.getBlockchainInfo(function(err, response) {
if (err) {
return finish(self._wrapRPCError(err));
}
var percentSynced = response.result.verificationprogress * 100;
log.info('Bitcoin Core Daemon Reindex Percentage: ' + percentSynced.toFixed(2));
if (Math.round(percentSynced) >= 100) {
node._reindex = false;
finish();

View File

@ -728,13 +728,13 @@ describe('Bitcoin Service', function() {
after(function() {
sandbox.restore();
});
it('give error from client syncpercentage', function(done) {
it('give error from client getblockchaininfo', function(done) {
var bitcoind = new BitcoinService(baseConfig);
bitcoind._reindexWait = 1;
var node = {
_reindex: true,
client: {
syncPercentage: sinon.stub().callsArgWith(0, {code: -1 , message: 'Test error'})
getBlockchainInfo: sinon.stub().callsArgWith(0, {code: -1 , message: 'Test error'})
}
};
bitcoind._checkReindex(node, function(err) {
@ -743,15 +743,20 @@ describe('Bitcoin Service', function() {
done();
});
});
it('will wait until syncpercentage is 100 percent', function(done) {
it('will wait until sync is 100 percent', function(done) {
var bitcoind = new BitcoinService(baseConfig);
bitcoind._reindexWait = 1;
var percent = 90;
var percent = 0.89;
var node = {
_reindex: true,
client: {
syncPercentage: function(callback) {
callback(null, percent++);
getBlockchainInfo: function(callback) {
percent += 0.01;
callback(null, {
result: {
verificationprogress: percent
}
});
}
}
};