Files
xahau.js/test/client/prepareOrder/index.ts
Jackson Mills da9feffada Remove deprecated functions from api.ts (aka client.ts) (#1534)
* Removed deprecated functions from client.ts

* Renamed files to be camelCase

* Created top-level utils folder and tied all sub-references to it

* Grouped tests for those utils into their own section

Co-authored-by: Nathan Nichols <natenichols@cox.net>
2021-10-04 14:10:09 -04:00

70 lines
2.6 KiB
TypeScript

import requests from '../../fixtures/requests'
import responses from '../../fixtures/responses'
import rippled from '../../fixtures/rippled'
import {assertRejects, assertResultMatch, TestSuite} from '../../testUtils'
const instructionsWithMaxLedgerVersionOffset = {maxLedgerVersionOffset: 100}
/**
* Every test suite exports their tests in the default object.
* - Check out the "TestSuite" type for documentation on the interface.
* - Check out "test/client/index.ts" for more information about the test runner.
*/
export default <TestSuite>{
'buy order': async (client, address, mockRippled) => {
mockRippled.addResponse({command: 'server_info'}, rippled.server_info.normal)
const request = requests.prepareOrder.buy
const result = await client.prepareOrder(address, request)
assertResultMatch(result, responses.prepareOrder.buy, 'prepare')
},
'buy order with expiration': async (client, address, mockRippled) => {
mockRippled.addResponse({command: 'server_info'}, rippled.server_info.normal)
const request = requests.prepareOrder.expiration
const response = responses.prepareOrder.expiration
const result = await client.prepareOrder(
address,
request,
instructionsWithMaxLedgerVersionOffset
)
assertResultMatch(result, response, 'prepare')
},
'sell order': async (client, address, mockRippled) => {
mockRippled.addResponse({command: 'server_info'}, rippled.server_info.normal)
const request = requests.prepareOrder.sell
const result = await client.prepareOrder(
address,
request,
instructionsWithMaxLedgerVersionOffset
)
assertResultMatch(result, responses.prepareOrder.sell, 'prepare')
},
'invalid': async (client, address, mockRippled) => {
mockRippled.addResponse({command: 'server_info'}, rippled.server_info.normal)
const request = Object.assign({}, requests.prepareOrder.sell)
delete request.direction // Make invalid
await assertRejects(
client.prepareOrder(
address,
request,
instructionsWithMaxLedgerVersionOffset
),
client.errors.ValidationError,
'instance.order requires property "direction"'
)
},
'with ticket': async (client, address, mockRippled) => {
mockRippled.addResponse({command: 'server_info'}, rippled.server_info.normal)
const request = requests.prepareOrder.sell
const localInstructions = {
...instructionsWithMaxLedgerVersionOffset,
maxFee: '0.000012',
ticketSequence: 23
}
const result = await client.prepareOrder(address, request, localInstructions)
assertResultMatch(result, responses.prepareOrder.ticket, 'prepare')
}
}