Remove exception from decoding issued currencies which evaluate to 'XRP' (#1920)

* Remove throw and revise tests

* Update chai dependency

* Disabling linter error about extraneous import

* Fix typo in test description

* Revert unnecessary test changes

* Remove unnecessary comments

* Revert chai change

* Add HISTORY.md

* Revert chai change in package-lock as well

* Fix typo

* Check the result of the decoding

* Update tests with correct expected behavior.

* Fix tests and update currency.js

* Update currency.ts
This commit is contained in:
Jackson Mills
2022-02-02 15:05:42 -08:00
committed by GitHub
parent 8f79c51c7c
commit b0e0f9f329
4 changed files with 27 additions and 7 deletions

View File

@@ -50,6 +50,28 @@ describe('encoding and decoding tx_json', function () {
const decoded = decode(encoded)
expect(my_tx).toEqual(decoded)
})
test('can decode a transaction with an issued currency that evaluates to XRP', function () {
// Encoding is done prior, because this is disallowed during encoding with client libraries to avoid scam XRP tokens.
const expectedTx = {
TransactionType: 'TrustSet',
Flags: 0,
Sequence: 19,
LimitAmount: {
value: '200',
currency: '0000000000000000000000005852500000000000',
issuer: 'r9hEDb4xBGRfBCcX3E4FirDWQBAYtpxC8K',
},
Fee: '10',
SigningPubKey:
'023076CBB7A61837F1A23D4A3DD7CE810B694992EB0959AB9D6F4BB6FED6F8CC26',
TxnSignature:
'304502202D0CD77D8E765E3783C309CD663723B18406B7950A348A6F301492916A990FC70221008A76D586111205304F10ADEFDFDDAF804EF202D8CD1E492DC6E1AA8030EA1844',
Account: 'rPtfQWdcdhuL9eNeNv5YfmekSX3K7vJHbG',
}
const encoded = encode(expectedTx)
const decoded = decode(encoded)
expect(expectedTx).toEqual(decoded)
})
test('throws when Amount is invalid', function () {
const my_tx = Object.assign({}, tx_json, {
Amount: '1000.001',