UNPKG

divvy-lib-transactionparser

Version:

Parses transaction objects to a higher-level view

69 lines (66 loc) 2.47 kB
'use strict' var assert = require('assert-diff') var parseChannelChanges = require('../src/index').parseChannelChanges describe('parseChannelChanges', function() { it('parses PayChannel metadata', function() { var metadata = { "AffectedNodes":[ { "ModifiedNode":{ "FinalFields":{ "Account":"rJNa71cLCjzQG68oNjh4fCUqCZSGNkWDrM", "Balance":"512724201", "Flags":0, "OwnerCount":98, "Sequence":24166 }, "LedgerEntryType":"AccountRoot", "LedgerIndex":"D16BF3F23AFB01CA5AC7860F9AF8037117972D5A389DDFDBB5A1064742B154D8", "PreviousFields":{ "Balance":"512714213", "Sequence":24165 }, "PreviousTxnID":"9345E3B3578F8F6C8DC55F7B39F7C48F9E79E7BD2A77ADE2714D5910C501980F", "PreviousTxnLgrSeq":39792515 } }, { "ModifiedNode":{ "FinalFields":{ "Account":"rpyC4JM5kifsNG6YbARDAxAJQLBDZw9ZFQ", "Amount":"10000000", "Balance":"40000", "Destination":"rJNa71cLCjzQG68oNjh4fCUqCZSGNkWDrM", "Flags":0, "OwnerNode":"0000000000000000", "PublicKey":"ED4DB1CE76AB25FAACE3E13BF57EA7767614FB52A250E1D04426A28B383A31A652", "SettleDelay":3600, "SourceTag":3382712545 }, "LedgerEntryType":"PayChannel", "LedgerIndex":"EC4DACE3360DCBF76FE80874931F2C75C5B4B6A05D615FA3E62DFF2BE34A8ACB", "PreviousFields":{ "Balance":"30000" }, "PreviousTxnID":"5E854E78A51C45FC626C61924C20EA25670EF18E5609DA5F1F7898E833DCB257", "PreviousTxnLgrSeq":39749577 } } ], "TransactionIndex":24, "TransactionResult":"tesSUCCESS" } var result = parseChannelChanges(metadata) var expectedResult = { status: 'modified', channelId: 'EC4DACE3360DCBF76FE80874931F2C75C5B4B6A05D615FA3E62DFF2BE34A8ACB', source: 'rpyC4JM5kifsNG6YbARDAxAJQLBDZw9ZFQ', destination: 'rJNa71cLCjzQG68oNjh4fCUqCZSGNkWDrM', channelBalanceChangeDrops: '10000', channelAmountDrops: '10000000', channelBalanceDrops: '40000', previousTxnId: '5E854E78A51C45FC626C61924C20EA25670EF18E5609DA5F1F7898E833DCB257' } assert.deepEqual(result, expectedResult) }) })