diff --git a/src/js/ripple/remote.js b/src/js/ripple/remote.js index 3c5087b9..bd2f907a 100644 --- a/src/js/ripple/remote.js +++ b/src/js/ripple/remote.js @@ -945,6 +945,8 @@ Remote.prototype.requestLedger = function(options, callback) { break; case 'object': + if (!options) break; + Object.keys(options).forEach(function(o) { switch (o) { case 'full': @@ -953,17 +955,15 @@ Remote.prototype.requestLedger = function(options, callback) { case 'accounts': request.message[o] = true; break; - case 'ledger_index': case 'ledger_hash': request.message[o] = options[o]; - break; - + break; case 'closed' : case 'current' : case 'validated' : request.message.ledger_index = o; - break; + break; } }, options); break; @@ -1625,7 +1625,7 @@ Remote.accountRootRequest = function(type, responseFilter, account, ledger, call var request = this.requestLedgerEntry('account_root'); request.accountRoot(account); - request.ledgerChoose(ledger); + request.ledgerSelect(ledger); request.once('success', function(message) { request.emit(type, responseFilter(message)); diff --git a/test/remote-test.js b/test/remote-test.js index d2d92a0f..f790fc6d 100644 --- a/test/remote-test.js +++ b/test/remote-test.js @@ -144,7 +144,7 @@ describe('Remote', function () { ); }); - it('request constructors', function () { + describe('request constructors', function () { beforeEach(function () { callback = function () {} remote = new Remote(options); @@ -184,6 +184,13 @@ describe('Remote', function () { var request = remote.request_unl_delete(null, {}, callback); assert(request instanceof Request); }); + + it('request account balance with ledger', function() { + var request = remote.requestAccountBalance('r4qLSAzv4LZ9TLsR7diphGwKnSEAMQTSjS', 9592219); + assert.strictEqual(request.message.command, 'ledger_entry'); + assert.strictEqual(request.message.account_root, 'r4qLSAzv4LZ9TLsR7diphGwKnSEAMQTSjS'); + assert.strictEqual(request.message.ledger_index, 9592219); + }); }) it('create remote and get pending transactions', function() {