Skip to content

Commit

Permalink
add XChainModifyBridge tests
Browse files Browse the repository at this point in the history
  • Loading branch information
mvadari committed Sep 28, 2022
1 parent 2b96c78 commit 67b9ec1
Showing 1 changed file with 64 additions and 0 deletions.
64 changes: 64 additions & 0 deletions packages/xrpl/test/models/XChainModifyBridge.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import { assert } from 'chai'
import { validate, ValidationError } from 'xrpl-local'
import { validateXChainModifyBridge } from 'xrpl-local/models/transactions/XChainModifyBridge'

/**
* XChainModifyBridge Transaction Verification Testing.
*
* Providing runtime verification testing for each specific transaction type.
*/
describe('XChainModifyBridge', function () {
let tx

beforeEach(function () {
tx = {
Account: 'rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh',
XChainBridge: {
LockingChainDoor: 'rGzx83BVoqTYbGn7tiVAnFw7cbxjin13jL',
LockingChainIssue: 'XRP',
IssuingChainDoor: 'r3kmLJN5D28dHuH8vZNUZpMC43pEHpaocV',
IssuingChainIssue: 'XRP',
},
Fee: '10',
Flags: 0,
MinAccountCreateAmount: '10000',
Sequence: 1,
SignatureReward: '1000',
SigningPubKey:
'0330E7FC9D56BB25D6893BA3F317AE5BCF33B3291BD63DB32654A313222F7FD020',
TransactionType: 'XChainModifyBridge',
TxnSignature:
'30440220101BCA4B5B5A37C6F44480F9A34752C9AA8B2CDF5AD47E3CB424DEDC21C06DB702206EEB257E82A89B1F46A0A2C7F070B0BD181D980FF86FE4269E369F6FC7A27091',
}
})

it(`verifies valid XChainModifyBridge`, function () {
assert.doesNotThrow(() => validateXChainModifyBridge(tx))
assert.doesNotThrow(() => validate(tx))
})

it(`verifies valid XChainModifyBridge w/o optional`, function () {
delete tx.SignatureReward
delete tx.MinAccountCreateAmount
delete tx.Signature
delete tx.PublicKey

assert.doesNotThrow(() => validateXChainModifyBridge(tx))
assert.doesNotThrow(() => validate(tx))
})

it(`throws w/ missing XChainBridge`, function () {
delete tx.XChainBridge

assert.throws(
() => validateXChainModifyBridge(tx),
ValidationError,
'XChainModifyBridge: missing field XChainBridge',
)
assert.throws(
() => validate(tx),
ValidationError,
'XChainModifyBridge: missing field XChainBridge',
)
})
})

0 comments on commit 67b9ec1

Please sign in to comment.