mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-19 11:45:49 +00:00
133 lines
3.8 KiB
TypeScript
133 lines
3.8 KiB
TypeScript
import assert from 'assert'
|
|
|
|
import _ from 'lodash'
|
|
import {
|
|
Client,
|
|
isValidClassicAddress,
|
|
isValidXAddress,
|
|
dropsToXrp,
|
|
} from 'xrpl-local'
|
|
// how long before each test case times out
|
|
const TIMEOUT = 60000
|
|
// This test is reliant on external networks, and as such may be flaky.
|
|
describe('fundWallet', function () {
|
|
this.timeout(TIMEOUT)
|
|
|
|
it('submit generates a testnet wallet', async function () {
|
|
const api = new Client('wss://s.altnet.rippletest.net:51233')
|
|
|
|
await api.connect()
|
|
const { wallet, balance } = await api.fundWallet()
|
|
|
|
assert.notEqual(wallet, undefined)
|
|
assert(isValidClassicAddress(wallet.classicAddress))
|
|
assert(isValidXAddress(wallet.getXAddress()))
|
|
|
|
const info = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
assert.equal(dropsToXrp(info.result.account_data.Balance), balance)
|
|
|
|
const { balance: newBalance } = await api.fundWallet(wallet)
|
|
|
|
const afterSent = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
|
|
assert.equal(dropsToXrp(afterSent.result.account_data.Balance), newBalance)
|
|
|
|
await api.disconnect()
|
|
})
|
|
|
|
it('submit generates a devnet wallet', async function () {
|
|
const api = new Client('wss://s.devnet.rippletest.net:51233')
|
|
|
|
await api.connect()
|
|
const { wallet, balance } = await api.fundWallet()
|
|
|
|
assert.notEqual(wallet, undefined)
|
|
assert(isValidClassicAddress(wallet.classicAddress))
|
|
assert(isValidXAddress(wallet.getXAddress()))
|
|
|
|
const info = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
|
|
assert.equal(dropsToXrp(info.result.account_data.Balance), balance)
|
|
|
|
const { balance: newBalance } = await api.fundWallet(wallet)
|
|
|
|
const afterSent = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
assert.equal(dropsToXrp(afterSent.result.account_data.Balance), newBalance)
|
|
|
|
await api.disconnect()
|
|
})
|
|
|
|
it('can generate and fund wallets on nft-devnet', async function () {
|
|
const api = new Client('ws://xls20-sandbox.rippletest.net:51233')
|
|
|
|
await api.connect()
|
|
const { wallet, balance } = await api.fundWallet()
|
|
assert.notEqual(wallet, undefined)
|
|
assert(isValidClassicAddress(wallet.classicAddress))
|
|
assert(isValidXAddress(wallet.getXAddress()))
|
|
|
|
const info = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
|
|
assert.equal(dropsToXrp(info.result.account_data.Balance), balance)
|
|
|
|
const { balance: newBalance } = await api.fundWallet(wallet, {
|
|
faucetHost: 'faucet-nft.ripple.com',
|
|
})
|
|
|
|
const afterSent = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
assert.equal(dropsToXrp(afterSent.result.account_data.Balance), newBalance)
|
|
|
|
await api.disconnect()
|
|
})
|
|
|
|
it('can generate and fund wallets using a custom host', async function () {
|
|
const api = new Client('ws://xls20-sandbox.rippletest.net:51233')
|
|
|
|
await api.connect()
|
|
const { wallet, balance } = await api.fundWallet(null, {
|
|
faucetHost: 'faucet-nft.ripple.com',
|
|
})
|
|
|
|
assert.notEqual(wallet, undefined)
|
|
assert(isValidClassicAddress(wallet.classicAddress))
|
|
assert(isValidXAddress(wallet.getXAddress()))
|
|
|
|
const info = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
|
|
assert.equal(dropsToXrp(info.result.account_data.Balance), balance)
|
|
|
|
const { balance: newBalance } = await api.fundWallet(wallet, {
|
|
faucetHost: 'faucet-nft.ripple.com',
|
|
})
|
|
|
|
const afterSent = await api.request({
|
|
command: 'account_info',
|
|
account: wallet.classicAddress,
|
|
})
|
|
assert.equal(dropsToXrp(afterSent.result.account_data.Balance), newBalance)
|
|
|
|
await api.disconnect()
|
|
})
|
|
})
|