Add getTrustlines and unit test

This commit is contained in:
Chris Clark
2015-06-18 17:30:11 -07:00
parent 1b3be55711
commit d92fbfb7aa
10 changed files with 230 additions and 171 deletions

View File

@@ -0,0 +1,30 @@
'use strict';
const utils = require('./utils');
// rippled 'account_lines' returns a different format for
// trustlines than 'tx'
function parseAccountTrustline(trustline) {
const specification = utils.removeUndefined({
limit: trustline.limit,
currency: trustline.currency,
counterparty: trustline.account,
qualityIn: trustline.quality_in || undefined,
qualityOut: trustline.quality_out || undefined,
disableRippling: trustline.no_ripple,
frozen: trustline.freeze,
authorized: trustline.authorized
});
// rippled doesn't provide the counterparty's qualities
const counterparty = utils.removeUndefined({
limit: trustline.limit_peer,
disableRippling: trustline.no_ripple_peer,
frozen: trustline.freeze_peer,
authorized: trustline.peer_authorized
});
const state = {
balance: trustline.balance
};
return {specification, counterparty, state};
}
module.exports = parseAccountTrustline;

View File

@@ -13,7 +13,7 @@ function parseTrustline(tx: Object): Object {
counterparty: tx.LimitAmount.issuer,
qualityIn: tx.QualityIn,
qualityOut: tx.QualityOut,
allowRippling: (tx.Flags & flags.NoRipple) === 0,
disableRippling: (tx.Flags & flags.NoRipple) !== 0,
frozen: (tx.Flags & flags.SetFreeze) !== 0,
authorized: (tx.Flags & flags.SetAuth) !== 0
};