Files
xahau.js/test/client/getFee.ts
Nathan Nichols 615504db22 docs: finalizes documentation for xrpl.js (#1703)
docs: Adds JSDoc comments to all functions and interfaces
2021-10-12 14:04:18 -05:00

64 lines
1.9 KiB
TypeScript

import { assert } from 'chai'
import rippled from '../fixtures/rippled'
import { setupClient, teardownClient } from '../setupClient'
describe('client.getFee', function () {
beforeEach(setupClient)
afterEach(teardownClient)
it('getFee', async function () {
this.mockRippled.addResponse('server_info', rippled.server_info.normal)
const fee = await this.client.getFee()
assert.strictEqual(fee, '0.000012')
})
it('getFee - high load_factor', async function () {
this.mockRippled.addResponse(
'server_info',
rippled.server_info.highLoadFactor,
)
const fee = await this.client.getFee()
assert.strictEqual(fee, '2')
})
it('getFee - high load_factor with custom maxFeeXRP', async function () {
this.mockRippled.addResponse(
'server_info',
rippled.server_info.highLoadFactor,
)
/*
* Ensure that overriding with high maxFeeXRP of '51540' causes no errors.
* (fee will actually be 51539.607552)
*/
this.client.maxFeeXRP = '51540'
const fee = await this.client.getFee()
assert.strictEqual(fee, '51539.607552')
})
it('getFee custom cushion', async function () {
this.mockRippled.addResponse('server_info', rippled.server_info.normal)
this.client.feeCushion = 1.4
const fee = await this.client.getFee()
assert.strictEqual(fee, '0.000014')
})
/*
* This is not recommended since it may result in attempting to pay
* less than the base fee. However, this test verifies the existing behavior.
*/
it('getFee cushion less than 1.0', async function () {
this.mockRippled.addResponse('server_info', rippled.server_info.normal)
this.client.feeCushion = 0.9
const fee = await this.client.getFee()
assert.strictEqual(fee, '0.000009')
})
it('getFee reporting', async function () {
this.mockRippled.addResponse('server_info', rippled.server_info.normal)
const fee = await this.client.getFee()
assert.strictEqual(fee, '0.000012')
})
})