import { assert } from 'chai' import { LedgerEntryRequest, LedgerEntryResponse } from '../../../src' import serverUrl from '../serverUrl' import { setupClient, teardownClient, type XrplIntegrationTestContext, } from '../setup' // how long before each test case times out const TIMEOUT = 20000 describe('ledger_entry', function () { let testContext: XrplIntegrationTestContext beforeEach(async () => { testContext = await setupClient(serverUrl) }) afterEach(async () => teardownClient(testContext)) it( 'base', async () => { const validatedLedgerResponse = await testContext.client.request({ command: 'ledger_data', ledger_index: 'validated', }) assert.equal(validatedLedgerResponse.type, 'response') const ledgerEntryIndex = validatedLedgerResponse.result.state[0].index const ledgerEntryRequest: LedgerEntryRequest = { command: 'ledger_entry', index: ledgerEntryIndex, } const ledgerEntryResponse = await testContext.client.request( ledgerEntryRequest, ) const expectedResponse: LedgerEntryResponse = { id: ledgerEntryResponse.id, type: 'response', result: { index: ledgerEntryIndex, ledger_current_index: ledgerEntryResponse.result.ledger_current_index, node: ledgerEntryResponse.result.node, validated: false, }, } assert.equal(ledgerEntryResponse.type, 'response') assert.deepEqual(ledgerEntryResponse, expectedResponse) }, TIMEOUT, ) })