mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-12-01 17:45:49 +00:00
test: add integration tests for Account requests (#1643)
This commit is contained in:
103
test/integration/requests/accountTx.ts
Normal file
103
test/integration/requests/accountTx.ts
Normal file
@@ -0,0 +1,103 @@
|
||||
import { assert } from 'chai'
|
||||
import _ from 'lodash'
|
||||
|
||||
import { AccountTxRequest } from 'xrpl-local'
|
||||
|
||||
import serverUrl from '../serverUrl'
|
||||
import { setupClient, suiteClientSetup, teardownClient } from '../setup'
|
||||
|
||||
// how long before each test case times out
|
||||
const TIMEOUT = 20000
|
||||
|
||||
describe('account_tx', function () {
|
||||
this.timeout(TIMEOUT)
|
||||
|
||||
before(suiteClientSetup)
|
||||
beforeEach(_.partial(setupClient, serverUrl))
|
||||
afterEach(teardownClient)
|
||||
|
||||
it('base', async function () {
|
||||
const request: AccountTxRequest = {
|
||||
command: 'account_tx',
|
||||
account: this.wallet.getClassicAddress(),
|
||||
ledger_index: 'validated',
|
||||
}
|
||||
const response = await this.client.request(request)
|
||||
const expected = {
|
||||
result: {
|
||||
account: this.wallet.getClassicAddress(),
|
||||
limit: 400,
|
||||
transactions: [
|
||||
{
|
||||
tx: {
|
||||
Account: 'rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh',
|
||||
Amount: '400000000',
|
||||
Destination: this.wallet.getClassicAddress(),
|
||||
Fee: '12',
|
||||
Flags: 0,
|
||||
LastLedgerSequence: 1753,
|
||||
Sequence: 843,
|
||||
SigningPubKey:
|
||||
'0330E7FC9D56BB25D6893BA3F317AE5BCF33B3291BD63DB32654A313222F7FD020',
|
||||
TransactionType: 'Payment',
|
||||
TxnSignature:
|
||||
'30440220693D244BC13967E3DA67BDC974096784ED03DD4ACE6F36645E5176988452AFCF02200F8AB172432913899F27EC5523829AEDAD00CC2445690400E294EDF652A85945',
|
||||
date: 685747005,
|
||||
hash: '2E68BC15813B4A836FAC4D80E42E6FDA6410E99AB973937DEA5E6C2E9A116BAB',
|
||||
inLedger: 1734,
|
||||
ledger_index: 1734,
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
status: 'success',
|
||||
type: 'response',
|
||||
}
|
||||
assert.equal(response.status, expected.status)
|
||||
assert.equal(response.type, expected.type)
|
||||
assert.equal(response.result.account, expected.result.account)
|
||||
assert.equal(
|
||||
response.result.transactions[0].meta.TransactionResult,
|
||||
'tesSUCCESS',
|
||||
)
|
||||
assert.equal(
|
||||
typeof response.result.transactions[0].tx.LastLedgerSequence,
|
||||
'number',
|
||||
)
|
||||
assert.equal(typeof response.result.transactions[0].tx.Sequence, 'number')
|
||||
assert.equal(
|
||||
typeof response.result.transactions[0].tx.SigningPubKey,
|
||||
'string',
|
||||
)
|
||||
assert.equal(
|
||||
typeof response.result.transactions[0].tx.TxnSignature,
|
||||
'string',
|
||||
)
|
||||
assert.equal(typeof response.result.transactions[0].tx.Fee, 'string')
|
||||
assert.equal(typeof response.result.transactions[0].tx.hash, 'string')
|
||||
assert.equal(typeof response.result.transactions[0].tx.inLedger, 'number')
|
||||
assert.equal(
|
||||
typeof response.result.transactions[0].tx.ledger_index,
|
||||
'number',
|
||||
)
|
||||
|
||||
const responseTx = response.result.transactions[0].tx
|
||||
const expectedTx = expected.result.transactions[0].tx
|
||||
assert.deepEqual(
|
||||
[
|
||||
responseTx.Flags,
|
||||
responseTx.TransactionType,
|
||||
responseTx.Account,
|
||||
responseTx.Amount,
|
||||
responseTx.Destination,
|
||||
],
|
||||
[
|
||||
expectedTx.Flags,
|
||||
expectedTx.TransactionType,
|
||||
expectedTx.Account,
|
||||
expectedTx.Amount,
|
||||
expectedTx.Destination,
|
||||
],
|
||||
)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user