From fd0f64fe54ebeeb0d04367d900b9ea97a0903add Mon Sep 17 00:00:00 2001 From: Javi Date: Fri, 6 Nov 2020 10:44:46 +0100 Subject: [PATCH] fix(tests): more unit tests --- package.json | 2 +- src/transaction/sign.ts | 2 - test/api/prepareCheckCancel/index.ts | 17 +++++- test/api/prepareCheckCash/index.ts | 17 +++++- test/api/prepareCheckCreate/index.ts | 14 +++++ test/api/prepareEscrowCancellation/index.ts | 20 ++++++- test/api/prepareEscrowCreation/index.ts | 16 +++++- test/api/prepareEscrowExecution/index.ts | 20 ++++++- test/api/prepareOrder/index.ts | 17 +++++- test/api/prepareOrderCancellation/index.ts | 21 ++++++- test/api/preparePaymentChannelClaim/index.ts | 14 +++++ test/api/preparePaymentChannelCreate/index.ts | 18 ++++++ test/api/preparePaymentChannelFund/index.ts | 18 ++++++ test/api/prepareSettings/index.ts | 15 ++++- test/api/prepareTransaction/index.ts | 56 +++++++++++++++++++ test/api/prepareTrustline/index.ts | 16 +++++- test/api/sign/index.ts | 9 ++- test/fixtures/requests/index.js | 1 + test/fixtures/requests/sign-ticket.json | 9 +++ test/fixtures/responses/index.js | 33 ++++++++--- .../prepare-check-cancel-ticket.json | 8 +++ .../responses/prepare-check-cash-ticket.json | 8 +++ .../prepare-check-create-ticket.json | 8 +++ .../prepare-escrow-cancellation-ticket.json | 8 +++ .../prepare-escrow-creation-ticket.json | 8 +++ .../prepare-escrow-execution-ticket.json | 8 +++ .../prepare-order-cancellation-ticket.json | 8 +++ .../responses/prepare-order-ticket.json | 8 +++ .../prepare-payment-channel-claim-ticket.json | 8 +++ ...prepare-payment-channel-create-ticket.json | 8 +++ .../prepare-payment-channel-fund-ticket.json | 8 +++ .../responses/prepare-payment-ticket.json | 8 +++ .../responses/prepare-settings-ticket.json | 8 +++ .../responses/prepare-trustline-ticket.json | 8 +++ test/fixtures/responses/sign-ticket.json | 4 ++ 35 files changed, 429 insertions(+), 22 deletions(-) create mode 100644 test/fixtures/requests/sign-ticket.json create mode 100644 test/fixtures/responses/prepare-check-cancel-ticket.json create mode 100644 test/fixtures/responses/prepare-check-cash-ticket.json create mode 100644 test/fixtures/responses/prepare-check-create-ticket.json create mode 100644 test/fixtures/responses/prepare-escrow-cancellation-ticket.json create mode 100644 test/fixtures/responses/prepare-escrow-creation-ticket.json create mode 100644 test/fixtures/responses/prepare-escrow-execution-ticket.json create mode 100644 test/fixtures/responses/prepare-order-cancellation-ticket.json create mode 100644 test/fixtures/responses/prepare-order-ticket.json create mode 100644 test/fixtures/responses/prepare-payment-channel-claim-ticket.json create mode 100644 test/fixtures/responses/prepare-payment-channel-create-ticket.json create mode 100644 test/fixtures/responses/prepare-payment-channel-fund-ticket.json create mode 100644 test/fixtures/responses/prepare-payment-ticket.json create mode 100644 test/fixtures/responses/prepare-settings-ticket.json create mode 100644 test/fixtures/responses/prepare-trustline-ticket.json create mode 100644 test/fixtures/responses/sign-ticket.json diff --git a/package.json b/package.json index cfbecafa..8e829448 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "doctoc": "doctoc docs/index.md --title '# RippleAPI Reference' --github --maxlevel 2", "docgen": "node --harmony scripts/build_docs.js", "prepublish": "yarn clean && yarn build", - "test": "TS_NODE_PROJECT=src/tsconfig.json nyc mocha --exit -g 'creates a ticket successfully with another ticket'", + "test": "TS_NODE_PROJECT=src/tsconfig.json nyc mocha --exit -g 'sets sequence to 0 if a ticketSequence is passed'", "test:watch": "TS_NODE_PROJECT=src/tsconfig.json mocha --watch --reporter dot", "format": "prettier --write '{src,test}/**/*.ts'", "lint": "eslint 'src/**/*.ts' 'test/*-test.{ts,js}'", diff --git a/src/transaction/sign.ts b/src/transaction/sign.ts index 0f1060b8..4fb91b18 100644 --- a/src/transaction/sign.ts +++ b/src/transaction/sign.ts @@ -56,10 +56,8 @@ function signWithKeypair( keypair.privateKey ) } - const serialized = binaryCodec.encode(txToSignAndEncode) checkTxSerialization(serialized, tx) - return { signedTransaction: serialized, id: computeBinaryTransactionHash(serialized) diff --git a/test/api/prepareCheckCancel/index.ts b/test/api/prepareCheckCancel/index.ts index 328d8ca2..849b647e 100644 --- a/test/api/prepareCheckCancel/index.ts +++ b/test/api/prepareCheckCancel/index.ts @@ -1,6 +1,7 @@ import requests from '../../fixtures/requests' import responses from '../../fixtures/responses' import {assertResultMatch, TestSuite} from '../../utils' +const instructionsWithMaxLedgerVersionOffset = {maxLedgerVersionOffset: 100} /** * Every test suite exports their tests in the default object. @@ -8,11 +9,25 @@ import {assertResultMatch, TestSuite} from '../../utils' * - Check out "test/api/index.ts" for more information about the test runner. */ export default { - prepareCheckCancel: async (api, address) => { + 'prepareCheckCancel': async (api, address) => { const result = await api.prepareCheckCancel( address, requests.prepareCheckCancel.normal ) assertResultMatch(result, responses.prepareCheckCancel.normal, 'prepare') + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareCheckCancel( + address, + requests.prepareCheckCancel.normal, + localInstructions + ) + assertResultMatch(result, responses.prepareCheckCancel.ticket, 'prepare') } } diff --git a/test/api/prepareCheckCash/index.ts b/test/api/prepareCheckCash/index.ts index f16cbc98..761300b5 100644 --- a/test/api/prepareCheckCash/index.ts +++ b/test/api/prepareCheckCash/index.ts @@ -1,6 +1,7 @@ import requests from '../../fixtures/requests' import responses from '../../fixtures/responses' import {assertResultMatch, TestSuite} from '../../utils' +const instructionsWithMaxLedgerVersionOffset = {maxLedgerVersionOffset: 100} /** * Every test suite exports their tests in the default object. @@ -22,5 +23,19 @@ export default { requests.prepareCheckCash.deliverMin ) assertResultMatch(result, responses.prepareCheckCash.deliverMin, 'prepare') - } + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareCheckCash( + address, + requests.prepareCheckCash.amount, + localInstructions + ) + assertResultMatch(result, responses.prepareCheckCash.ticket, 'prepare') + }, } diff --git a/test/api/prepareCheckCreate/index.ts b/test/api/prepareCheckCreate/index.ts index c6bd185a..96707c66 100644 --- a/test/api/prepareCheckCreate/index.ts +++ b/test/api/prepareCheckCreate/index.ts @@ -28,5 +28,19 @@ export default { requests.prepareCheckCreate.full ) assertResultMatch(result, responses.prepareCheckCreate.full, 'prepare') + }, + + 'prepareCheckCreate with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareCheckCreate( + address, + requests.prepareCheckCreate.normal, + localInstructions + ) + assertResultMatch(result, responses.prepareCheckCreate.ticket, 'prepare') } } diff --git a/test/api/prepareEscrowCancellation/index.ts b/test/api/prepareEscrowCancellation/index.ts index 75fb2d69..9bddbea2 100644 --- a/test/api/prepareEscrowCancellation/index.ts +++ b/test/api/prepareEscrowCancellation/index.ts @@ -32,5 +32,23 @@ export default { responses.prepareEscrowCancellation.memos, 'prepare' ) - } + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareEscrowCancellation( + address, + requests.prepareEscrowCancellation.normal, + localInstructions + ) + assertResultMatch( + result, + responses.prepareEscrowCancellation.ticket, + 'prepare' + ) + }, } diff --git a/test/api/prepareEscrowCreation/index.ts b/test/api/prepareEscrowCreation/index.ts index 2f81e8bf..672ed4ae 100644 --- a/test/api/prepareEscrowCreation/index.ts +++ b/test/api/prepareEscrowCreation/index.ts @@ -45,5 +45,19 @@ export default { api.errors.ValidationError, 'instance.escrowCreation requires property "amount"' ) - } + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000396', + ticketSequence: 23 + } + const result = await api.prepareEscrowCreation( + address, + requests.prepareEscrowCreation.normal, + localInstructions + ) + assertResultMatch(result, responses.prepareEscrowCreation.ticket, 'prepare') + }, } diff --git a/test/api/prepareEscrowExecution/index.ts b/test/api/prepareEscrowExecution/index.ts index a875debe..e54a1a1e 100644 --- a/test/api/prepareEscrowExecution/index.ts +++ b/test/api/prepareEscrowExecution/index.ts @@ -56,5 +56,23 @@ export default { api.errors.ValidationError, '"condition" and "fulfillment" fields on EscrowFinish must only be specified together.' ) - } + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000396', + ticketSequence: 23 + } + const result = await api.prepareEscrowExecution( + address, + requests.prepareEscrowExecution.normal, + localInstructions + ) + assertResultMatch( + result, + responses.prepareEscrowExecution.ticket, + 'prepare' + ) + }, } diff --git a/test/api/prepareOrder/index.ts b/test/api/prepareOrder/index.ts index c44041d0..1695eb27 100644 --- a/test/api/prepareOrder/index.ts +++ b/test/api/prepareOrder/index.ts @@ -48,5 +48,20 @@ export default { api.errors.ValidationError, 'instance.order requires property "direction"' ) - } + }, + + 'with ticket': async (api, address) => { + const request = requests.prepareOrder.sell + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareOrder( + address, + request, + localInstructions + ) + assertResultMatch(result, responses.prepareOrder.ticket, 'prepare') + }, } diff --git a/test/api/prepareOrderCancellation/index.ts b/test/api/prepareOrderCancellation/index.ts index f47ab227..1b8492ed 100644 --- a/test/api/prepareOrderCancellation/index.ts +++ b/test/api/prepareOrderCancellation/index.ts @@ -55,5 +55,24 @@ export default { api.errors.ValidationError, 'instance.orderCancellation requires property "orderSequence"' ) - } + }, + + 'with ticket': async (api, address) => { + const request = requests.prepareOrderCancellation.simple + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareOrderCancellation( + address, + request, + localInstructions + ) + assertResultMatch( + result, + responses.prepareOrderCancellation.ticket, + 'prepare' + ) + }, } diff --git a/test/api/preparePaymentChannelClaim/index.ts b/test/api/preparePaymentChannelClaim/index.ts index 31f58520..86e55d84 100644 --- a/test/api/preparePaymentChannelClaim/index.ts +++ b/test/api/preparePaymentChannelClaim/index.ts @@ -51,6 +51,20 @@ export default { assertResultMatch(response, RESPONSE_FIXTURES.close, 'prepare') }, + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const response = await api.preparePaymentChannelClaim( + address, + REQUEST_FIXTURES.normal, + localInstructions + ) + assertResultMatch(response, RESPONSE_FIXTURES.ticket, 'prepare') + }, + 'rejects Promise on preparePaymentChannelClaim with renew and close': async ( api, address diff --git a/test/api/preparePaymentChannelCreate/index.ts b/test/api/preparePaymentChannelCreate/index.ts index 214f6edb..bfea3b05 100644 --- a/test/api/preparePaymentChannelCreate/index.ts +++ b/test/api/preparePaymentChannelCreate/index.ts @@ -43,5 +43,23 @@ export default { responses.preparePaymentChannelCreate.full, 'prepare' ) + }, + + 'preparePaymentChannelCreate with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.preparePaymentChannelCreate( + address, + requests.preparePaymentChannelCreate.normal, + localInstructions + ) + assertResultMatch( + result, + responses.preparePaymentChannelCreate.ticket, + 'prepare' + ) } } diff --git a/test/api/preparePaymentChannelFund/index.ts b/test/api/preparePaymentChannelFund/index.ts index 43feeb50..bc678173 100644 --- a/test/api/preparePaymentChannelFund/index.ts +++ b/test/api/preparePaymentChannelFund/index.ts @@ -36,5 +36,23 @@ export default { responses.preparePaymentChannelFund.full, 'prepare' ) + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.preparePaymentChannelFund( + address, + requests.preparePaymentChannelFund.normal, + localInstructions + ) + assertResultMatch( + result, + responses.preparePaymentChannelFund.ticket, + 'prepare' + ) } } diff --git a/test/api/prepareSettings/index.ts b/test/api/prepareSettings/index.ts index 71b32844..207d338f 100644 --- a/test/api/prepareSettings/index.ts +++ b/test/api/prepareSettings/index.ts @@ -251,5 +251,18 @@ export default { api.sign(result.txJSON, secret), responses.prepareSettings.signed ) - } + }, + 'prepare settings with ticket': async (api, address) => { + const instructions = { + ticketSequence: 23, + maxLedgerVersion: 8820051, + fee: '0.000012' + } + const response = await api.prepareSettings( + address, + requests.prepareSettings.domain, + instructions + ) + assertResultMatch(response, responses.prepareSettings.ticket, 'prepare') + }, } diff --git a/test/api/prepareTransaction/index.ts b/test/api/prepareTransaction/index.ts index 26309971..1eb5ce2a 100644 --- a/test/api/prepareTransaction/index.ts +++ b/test/api/prepareTransaction/index.ts @@ -1240,5 +1240,61 @@ export default { responses.preparePaymentChannelClaim.close, 'prepare' ) + }, + + 'rejects Promise if both sequence and ticketSecuence are set': async ( + api, + address + ) => { + const localInstructions = { + ticketSequence: 23, + sequence: 23 + } + const txJSON = { + TransactionType: 'DepositPreauth', + Account: address, + Authorize: 'rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo', + Fee: '16' + } + await assertRejects( + api.prepareTransaction(txJSON, localInstructions), + ValidationError, + 'instance is of prohibited type [object Object]' + ) + }, + + 'sets sequence to 0 if a ticketSequence is passed': async ( + api, + address + ) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + + const txJSON = { + TransactionType: 'Payment', + Account: address, + Destination: 'rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo', + Amount: { + currency: 'USD', + issuer: 'rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM', + value: '0.01' + }, + SendMax: { + currency: 'USD', + issuer: 'rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM', + value: '0.01' + }, + Flags: 0 + } + + const response = await api.prepareTransaction(txJSON, localInstructions) + assertResultMatch( + response, + responses.preparePayment.ticket, + 'prepare' + ) } } diff --git a/test/api/prepareTrustline/index.ts b/test/api/prepareTrustline/index.ts index de96d2f8..7c1b55af 100644 --- a/test/api/prepareTrustline/index.ts +++ b/test/api/prepareTrustline/index.ts @@ -48,5 +48,19 @@ export default { api.errors.ValidationError, 'instance.trustline requires property "limit"' ) - } + }, + + 'with ticket': async (api, address) => { + const localInstructions = { + ...instructionsWithMaxLedgerVersionOffset, + maxFee: '0.000012', + ticketSequence: 23 + } + const result = await api.prepareTrustline( + address, + requests.prepareTrustline.simple, + localInstructions + ) + assertResultMatch(result, responses.prepareTrustline.ticket, 'prepare') + }, } diff --git a/test/api/sign/index.ts b/test/api/sign/index.ts index 1276604f..c6df02f6 100644 --- a/test/api/sign/index.ts +++ b/test/api/sign/index.ts @@ -330,5 +330,12 @@ export default { assert.deepEqual(result, expectedResponse) schemaValidator.schemaValidate('sign', result) - } + }, + + 'sign with ticket': async (api, address) => { + const secret = 'sn7n5R1cR5Y3fRFkuWXA94Ts1frVJ' + const result = api.sign(REQUEST_FIXTURES.ticket.txJSON, secret) + assert.deepEqual(result, RESPONSE_FIXTURES.ticket) + schemaValidator.schemaValidate('sign', result) + }, } diff --git a/test/fixtures/requests/index.js b/test/fixtures/requests/index.js index fae44fbd..ae583668 100644 --- a/test/fixtures/requests/index.js +++ b/test/fixtures/requests/index.js @@ -76,6 +76,7 @@ module.exports = { }, sign: { normal: require('./sign'), + ticket: require('./sign-ticket'), escrow: require('./sign-escrow.json'), signAs: require('./sign-as') }, diff --git a/test/fixtures/requests/sign-ticket.json b/test/fixtures/requests/sign-ticket.json new file mode 100644 index 00000000..021265f7 --- /dev/null +++ b/test/fixtures/requests/sign-ticket.json @@ -0,0 +1,9 @@ +{ + "txJSON": "{\"TransactionType\": \"TicketCreate\", \"TicketCount\": 1, \"Account\": \"r4SDqUD1ZcfoZrhnsZ94XNFKxYL4oHYJyA\", \"Sequence\": 0, \"TicketSequence\": 23, \"Fee\": \"10000\"}", + "instructions": { + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} + + diff --git a/test/fixtures/responses/index.js b/test/fixtures/responses/index.js index 07fdc3cc..f5577a27 100644 --- a/test/fixtures/responses/index.js +++ b/test/fixtures/responses/index.js @@ -94,16 +94,19 @@ module.exports = { }, prepareOrder: { buy: require('./prepare-order.json'), + ticket: require('./prepare-order-ticket.json'), sell: require('./prepare-order-sell.json'), expiration: require('./prepare-order-expiration') }, prepareOrderCancellation: { normal: require('./prepare-order-cancellation.json'), + ticket: require('./prepare-order-cancellation-ticket.json'), withMemos: require('./prepare-order-cancellation-memos.json'), noInstructions: require('./prepare-order-cancellation-no-instructions.json') }, preparePayment: { normal: require('./prepare-payment.json'), + ticket: require('./prepare-payment-ticket'), minAmountXRP: require('./prepare-payment-min-amount-xrp.json'), minAmountXRPXRP: require('./prepare-payment-min-amount-xrp-xrp.json'), allOptions: require('./prepare-payment-all-options.json'), @@ -115,6 +118,7 @@ module.exports = { regularKey: require('./prepare-settings-regular-key.json'), removeRegularKey: require('./prepare-settings-remove-regular-key.json'), flags: require('./prepare-settings.json'), + ticket: require('./prepare-settings-ticket.json'), flagsMultisign: require('./prepare-settings-multisign.json'), flagSet: require('./prepare-settings-flag-set.json'), flagClear: require('./prepare-settings-flag-clear.json'), @@ -131,54 +135,65 @@ module.exports = { }, prepareCheckCreate: { normal: require('./prepare-check-create'), + ticket: require('./prepare-check-create-ticket'), full: require('./prepare-check-create-full') }, prepareCheckCash: { amount: require('./prepare-check-cash-amount'), + ticket: require('./prepare-check-cash-ticket'), deliverMin: require('./prepare-check-cash-delivermin') }, prepareCheckCancel: { - normal: require('./prepare-check-cancel') + normal: require('./prepare-check-cancel'), + ticket: require('./prepare-check-cancel-ticket') }, prepareEscrowCreation: { normal: require('./prepare-escrow-creation'), + ticket: require('./prepare-escrow-creation-ticket'), full: require('./prepare-escrow-creation-full') }, prepareEscrowExecution: { normal: require('./prepare-escrow-execution'), + ticket: require('./prepare-escrow-execution-ticket'), simple: require('./prepare-escrow-execution-simple') }, prepareEscrowCancellation: { normal: require('./prepare-escrow-cancellation'), + ticket: require('./prepare-escrow-cancellation-ticket'), memos: require('./prepare-escrow-cancellation-memos') }, preparePaymentChannelCreate: { normal: require('./prepare-payment-channel-create'), + ticket: require('./prepare-payment-channel-create-ticket'), full: require('./prepare-payment-channel-create-full') }, preparePaymentChannelFund: { normal: require('./prepare-payment-channel-fund'), + ticket: require('./prepare-payment-channel-fund-ticket'), full: require('./prepare-payment-channel-fund-full') }, preparePaymentChannelClaim: { normal: require('./prepare-payment-channel-claim'), + ticket: require('./prepare-payment-channel-claim-ticket'), renew: require('./prepare-payment-channel-claim-renew'), close: require('./prepare-payment-channel-claim-close') }, prepareTrustline: { - simple: require('./prepare-trustline-simple.json'), - frozen: require('./prepare-trustline-frozen.json'), - complex: require('./prepare-trustline.json') + simple: require('./prepare-trustline-simple'), + ticket: require('./prepare-trustline-ticket'), + frozen: require('./prepare-trustline-frozen'), + complex: require('./prepare-trustline') }, sign: { - normal: require('./sign.json'), - escrow: require('./sign-escrow.json'), + normal: require('./sign'), + ticket: require('./sign-ticket'), + escrow: require('./sign-escrow'), signAs: require('./sign-as') }, signPaymentChannelClaim: require('./sign-payment-channel-claim'), combine: { - single: require('./combine.json') + single: require('./combine') }, - submit: require('./submit.json'), - ledgerEvent: require('./ledger-event.json') + submit: require('./submit'), + ledgerEvent: require('./ledger-event') }; diff --git a/test/fixtures/responses/prepare-check-cancel-ticket.json b/test/fixtures/responses/prepare-check-cancel-ticket.json new file mode 100644 index 00000000..c1312f66 --- /dev/null +++ b/test/fixtures/responses/prepare-check-cancel-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCancel\",\"CheckID\":\"49647F0D748DC3FE26BDACBC57F251AADEFFF391403EC9BF87C97F67E9977FB0\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-check-cash-ticket.json b/test/fixtures/responses/prepare-check-cash-ticket.json new file mode 100644 index 00000000..8ccbcec3 --- /dev/null +++ b/test/fixtures/responses/prepare-check-cash-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCash\",\"CheckID\":\"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334\",\"Amount\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Sequence\":0,\"TicketSequence\":23,\"Fee\":\"12\"}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-check-create-ticket.json b/test/fixtures/responses/prepare-check-create-ticket.json new file mode 100644 index 00000000..1fe34c24 --- /dev/null +++ b/test/fixtures/responses/prepare-check-create-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCreate\",\"Destination\":\"rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW\",\"SendMax\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Sequence\":0,\"TicketSequence\":23,\"Fee\":\"12\"}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-escrow-cancellation-ticket.json b/test/fixtures/responses/prepare-escrow-cancellation-ticket.json new file mode 100644 index 00000000..d665bb64 --- /dev/null +++ b/test/fixtures/responses/prepare-escrow-cancellation-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowCancel\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Owner\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":1234,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-escrow-creation-ticket.json b/test/fixtures/responses/prepare-escrow-creation-ticket.json new file mode 100644 index 00000000..343e982c --- /dev/null +++ b/test/fixtures/responses/prepare-escrow-creation-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowCreate\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Destination\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"Amount\":\"10000\",\"CancelAfter\":536544000,\"FinishAfter\":464908910,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-escrow-execution-ticket.json b/test/fixtures/responses/prepare-escrow-execution-ticket.json new file mode 100644 index 00000000..c8184f72 --- /dev/null +++ b/test/fixtures/responses/prepare-escrow-execution-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowFinish\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Owner\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":1234,\"Condition\":\"A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100\",\"Fulfillment\":\"A0028000\",\"LastLedgerSequence\":8820051,\"Fee\":\"396\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000396", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-order-cancellation-ticket.json b/test/fixtures/responses/prepare-order-cancellation-ticket.json new file mode 100644 index 00000000..cd8202e3 --- /dev/null +++ b/test/fixtures/responses/prepare-order-cancellation-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"OfferCancel\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":23,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-order-ticket.json b/test/fixtures/responses/prepare-order-ticket.json new file mode 100644 index 00000000..07ba43cc --- /dev/null +++ b/test/fixtures/responses/prepare-order-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"TransactionType\":\"OfferCreate\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TakerGets\":{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\",\"value\":\"10.1\"},\"TakerPays\":\"2000000\",\"Flags\":2148139008,\"Memos\":[{\"Memo\":{\"MemoData\":\"7465787465642064617461\",\"MemoType\":\"74657374\",\"MemoFormat\":\"746578742F706C61696E\"}}],\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23,\"OfferSequence\":12345}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-payment-channel-claim-ticket.json b/test/fixtures/responses/prepare-payment-channel-claim-ticket.json new file mode 100644 index 00000000..33ddd2c2 --- /dev/null +++ b/test/fixtures/responses/prepare-payment-channel-claim-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelClaim\",\"Channel\":\"C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-payment-channel-create-ticket.json b/test/fixtures/responses/prepare-payment-channel-create-ticket.json new file mode 100644 index 00000000..2446c999 --- /dev/null +++ b/test/fixtures/responses/prepare-payment-channel-create-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON":"{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelCreate\",\"Amount\":\"1000000\",\"Destination\":\"rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW\",\"SettleDelay\":86400,\"PublicKey\":\"32D2471DB72B27E3310F355BB33E339BF26F8392D5A93D3BC0FC3B566612DA0F0A\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-payment-channel-fund-ticket.json b/test/fixtures/responses/prepare-payment-channel-fund-ticket.json new file mode 100644 index 00000000..bd4bfe2f --- /dev/null +++ b/test/fixtures/responses/prepare-payment-channel-fund-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON":"{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelFund\",\"Channel\":\"C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198\",\"Amount\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-payment-ticket.json b/test/fixtures/responses/prepare-payment-ticket.json new file mode 100644 index 00000000..19aab695 --- /dev/null +++ b/test/fixtures/responses/prepare-payment-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"Payment\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Destination\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"Amount\":{\"value\":\"0.01\",\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"SendMax\":{\"value\":\"0.01\",\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-settings-ticket.json b/test/fixtures/responses/prepare-settings-ticket.json new file mode 100644 index 00000000..443b7673 --- /dev/null +++ b/test/fixtures/responses/prepare-settings-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"TransactionType\":\"AccountSet\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Memos\":[{\"Memo\":{\"MemoData\":\"7465787465642064617461\",\"MemoType\":\"74657374\",\"MemoFormat\":\"746578742F706C61696E\"}}],\"Domain\":\"726970706C652E636F6D\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/prepare-trustline-ticket.json b/test/fixtures/responses/prepare-trustline-ticket.json new file mode 100644 index 00000000..1dc38435 --- /dev/null +++ b/test/fixtures/responses/prepare-trustline-ticket.json @@ -0,0 +1,8 @@ +{ + "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"TrustSet\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"LimitAmount\":{\"value\":\"0.1\",\"currency\":\"BTC\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":0,\"TicketSequence\":23}", + "instructions": { + "fee": "0.000012", + "ticketSequence": 23, + "maxLedgerVersion": 8820051 + } +} diff --git a/test/fixtures/responses/sign-ticket.json b/test/fixtures/responses/sign-ticket.json new file mode 100644 index 00000000..9d25ad04 --- /dev/null +++ b/test/fixtures/responses/sign-ticket.json @@ -0,0 +1,4 @@ +{ + "signedTransaction": "12000A2400000000202800000001202900000017684000000000002710732103E985C55BDCE4171394A0521AA84C71F81425680A7CE510AEF49662CF5A78D38674473045022100A77F102B632779C0E3F25B8715CB8FF2A15A702F3A39D1E6416C981B604D2E0302207E1DB8418D547E8AE322F49585E1C554E8759C0FBF7B88158BE3D0EE6B2E4E0A8114EB1FC04FDA0248FB6DE5BA4235425773D61DF0F3", + "id": "9F1002A8DB9D06D5F3AB2070387F17E12421DCE8444EED13E5F6928291EB4F43" +}