diff --git a/packages/ripple-binary-codec/src/enums/definitions.json b/packages/ripple-binary-codec/src/enums/definitions.json index 30440ad1..6d8e73ba 100644 --- a/packages/ripple-binary-codec/src/enums/definitions.json +++ b/packages/ripple-binary-codec/src/enums/definitions.json @@ -1477,6 +1477,16 @@ "isSigningField": true, "type": "UInt8" } + ], + [ + "DestinationNode", + { + "nth": 9, + "isVLEncoded": false, + "isSerialized": true, + "isSigningField": true, + "type": "UInt64" + } ] ], "TRANSACTION_RESULTS": { diff --git a/packages/ripple-binary-codec/test/binary-serializer-test.js b/packages/ripple-binary-codec/test/binary-serializer-test.js index 7bcc311e..b51fb84f 100644 --- a/packages/ripple-binary-codec/test/binary-serializer-test.js +++ b/packages/ripple-binary-codec/test/binary-serializer-test.js @@ -22,7 +22,8 @@ const Escrow = { }, finish: { tx: require('./fixtures/escrow-finish-tx.json'), - binary: require('./fixtures/escrow-finish-binary.json') + binary: require('./fixtures/escrow-finish-binary.json'), + meta: require('./fixtures/escrow-finish-meta-binary.json') }, cancel: { tx: require('./fixtures/escrow-cancel-tx.json'), @@ -142,6 +143,8 @@ function EscrowTest() { it('can serialize EscrowFinish', () => { assert.strictEqual(encode(Escrow.finish.tx), Escrow.finish.binary); + assert.strictEqual(encode(Escrow.finish.tx.meta), + Escrow.finish.meta); }); it('can serialize EscrowCancel', () => { assert.strictEqual(encode(Escrow.cancel.tx), diff --git a/packages/ripple-binary-codec/test/fixtures/escrow-finish-binary.json b/packages/ripple-binary-codec/test/fixtures/escrow-finish-binary.json index af74934b..1922af43 100644 --- a/packages/ripple-binary-codec/test/fixtures/escrow-finish-binary.json +++ b/packages/ripple-binary-codec/test/fixtures/escrow-finish-binary.json @@ -1 +1 @@ -"120002201900000007701004A0028000701127A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B8558101008114EE5F7CF61504C7CF7E0C22562EB19CC7ACB0FCBA8214EE5F7CF61504C7CF7E0C22562EB19CC7ACB0FCBA" +"1200022280000000240000000320190000000268400000000000000A7321028DB04DA8B702272B2A29FAF3DBCF40D01386208E6A9541DB497BE962FEF96A9C74473045022100E3C860D54E88AFA8584FBED99AA38BCB512AB1D69D87F3F71EF38ACB6EA4B7A202204CC1BB34DAA221416DB8946B583D4F33C7E22C130F9FA49353FB6ADB2DF6C69D8114E151CA3207BAB5B91D2F0E4D35ECDFD4551C69A18214E151CA3207BAB5B91D2F0E4D35ECDFD4551C69A1" diff --git a/packages/ripple-binary-codec/test/fixtures/escrow-finish-meta-binary.json b/packages/ripple-binary-codec/test/fixtures/escrow-finish-meta-binary.json new file mode 100644 index 00000000..cb8f0c5d --- /dev/null +++ b/packages/ripple-binary-codec/test/fixtures/escrow-finish-meta-binary.json @@ -0,0 +1 @@ +"201C0000000BF8E511006125020B814F55F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F95644A462A2806A513D7480CA71059D3D33637B65458017A8828A8F95AF17272501E6624000000010DC67D0E1E7220000000024000000052D00000000624000000013C074F08114DC0BCC71D87BB4E684B35721DC12F2C4E1ABABA4E1E1E4110075569766AE124E5053BCFDE253F6E3DDBAC13858CC0700DDECDCD57FF2FA777BEF7DE7220000000025020B814F202521A0C1B834000000000000000039000000000000000055F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F9614000000002E40D208114E151CA3207BAB5B91D2F0E4D35ECDFD4551C69A18314DC0BCC71D87BB4E684B35721DC12F2C4E1ABABA4E1E1E511006456BA4B47767C25E21CCDA3553BD45BE3699B34B508B459FE0472C70C51660058E0E7220000000058BA4B47767C25E21CCDA3553BD45BE3699B34B508B459FE0472C70C51660058E08214E151CA3207BAB5B91D2F0E4D35ECDFD4551C69A1E1E1E511006125020B814F55F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F956E4DA2A510F0C7FFD0474FAA4C7308A83828E0B3DD09EAA9CFDFFC067E3719D2EE624000000032D00000001624000000002FAF06CE1E7220000000024000000042D00000000624000000002FAF0628114E151CA3207BAB5B91D2F0E4D35ECDFD4551C69A1E1E1E511006456ECE79D27042E87B02DF3A263DB6BB6FCD96E69E20E0955F84D47D164C37546A1E7220000000058ECE79D27042E87B02DF3A263DB6BB6FCD96E69E20E0955F84D47D164C37546A18214DC0BCC71D87BB4E684B35721DC12F2C4E1ABABA4E1E1F1031000" diff --git a/packages/ripple-binary-codec/test/fixtures/escrow-finish-tx.json b/packages/ripple-binary-codec/test/fixtures/escrow-finish-tx.json index 24a57bf0..3b751a81 100644 --- a/packages/ripple-binary-codec/test/fixtures/escrow-finish-tx.json +++ b/packages/ripple-binary-codec/test/fixtures/escrow-finish-tx.json @@ -1,8 +1,95 @@ { - "Account" : "r4jQDHCUvgcBAa5EzcB1D8BHGcjYP9eBC2", - "Condition" : "A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100", - "Fulfillment" : "A0028000", - "OfferSequence" : 7, - "Owner" : "r4jQDHCUvgcBAa5EzcB1D8BHGcjYP9eBC2", - "TransactionType" : "EscrowFinish" + "Account": "rMYPppnVNQ7crMizv8D6wF45kYuSupygyr", + "Fee": "10", + "Flags": 2147483648, + "OfferSequence": 2, + "Owner": "rMYPppnVNQ7crMizv8D6wF45kYuSupygyr", + "Sequence": 3, + "SigningPubKey": "028DB04DA8B702272B2A29FAF3DBCF40D01386208E6A9541DB497BE962FEF96A9C", + "TransactionType": "EscrowFinish", + "TxnSignature": "3045022100E3C860D54E88AFA8584FBED99AA38BCB512AB1D69D87F3F71EF38ACB6EA4B7A202204CC1BB34DAA221416DB8946B583D4F33C7E22C130F9FA49353FB6ADB2DF6C69D", + "hash": "1A76D4BA47A53A66B539D4BD4C30826A5E51C78D0B7344758EACAC77A6753C3C", + "meta": { + "AffectedNodes": [ + { + "ModifiedNode": { + "FinalFields": { + "Account": "rMhV8zfKJRqEspcayRfqa4FuzQg8kW5LdB", + "Balance": "331379952", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 5 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "44A462A2806A513D7480CA71059D3D33637B65458017A8828A8F95AF17272501", + "PreviousFields": { + "Balance": "282879952" + }, + "PreviousTxnID": "F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F9", + "PreviousTxnLgrSeq": 34308431 + } + }, + { + "DeletedNode": { + "FinalFields": { + "Account": "rMYPppnVNQ7crMizv8D6wF45kYuSupygyr", + "Amount": "48500000", + "Destination": "rMhV8zfKJRqEspcayRfqa4FuzQg8kW5LdB", + "DestinationNode": "0000000000000000", + "FinishAfter": 564183480, + "Flags": 0, + "OwnerNode": "0000000000000000", + "PreviousTxnID": "F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F9", + "PreviousTxnLgrSeq": 34308431 + }, + "LedgerEntryType": "Escrow", + "LedgerIndex": "9766AE124E5053BCFDE253F6E3DDBAC13858CC0700DDECDCD57FF2FA777BEF7D" + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Flags": 0, + "Owner": "rMYPppnVNQ7crMizv8D6wF45kYuSupygyr", + "RootIndex": "BA4B47767C25E21CCDA3553BD45BE3699B34B508B459FE0472C70C51660058E0" + }, + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "BA4B47767C25E21CCDA3553BD45BE3699B34B508B459FE0472C70C51660058E0" + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Account": "rMYPppnVNQ7crMizv8D6wF45kYuSupygyr", + "Balance": "49999970", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 4 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "E4DA2A510F0C7FFD0474FAA4C7308A83828E0B3DD09EAA9CFDFFC067E3719D2E", + "PreviousFields": { + "Balance": "49999980", + "OwnerCount": 1, + "Sequence": 3 + }, + "PreviousTxnID": "F72706F8C7B9C07D83332BE330D77B5CE6A246FE4FA04DD47EBC88719A35B5F9", + "PreviousTxnLgrSeq": 34308431 + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Flags": 0, + "Owner": "rMhV8zfKJRqEspcayRfqa4FuzQg8kW5LdB", + "RootIndex": "ECE79D27042E87B02DF3A263DB6BB6FCD96E69E20E0955F84D47D164C37546A1" + }, + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "ECE79D27042E87B02DF3A263DB6BB6FCD96E69E20E0955F84D47D164C37546A1" + } + } + ], + "TransactionIndex": 11, + "TransactionResult": "tesSUCCESS" + } }