feat: adds isValidAddress (#1672)

* feat: adds isValidAddress
This commit is contained in:
Nathan Nichols
2021-09-27 12:40:28 -07:00
committed by Mayukha Vadari
parent f5dee87ca7
commit edcdd3a0fc
2 changed files with 37 additions and 0 deletions

View File

@@ -56,6 +56,17 @@ function isValidSecret(secret: string): boolean {
} }
} }
/**
* Validates that a given address is a valid X-Address or a valid classic
* address.
*
* @param address - Address to validate.
* @returns True if address is a valid X-Address or classic address.
*/
function isValidAddress(address: string): boolean {
return isValidXAddress(address) || isValidClassicAddress(address)
}
/** /**
* Removes undefined values from an object. * Removes undefined values from an object.
* *
@@ -94,6 +105,7 @@ export {
rippleTimeToUnixTime, rippleTimeToUnixTime,
unixTimeToRippleTime, unixTimeToRippleTime,
isValidSecret, isValidSecret,
isValidAddress,
computeSignedTransactionHash, computeSignedTransactionHash,
computeBinaryTransactionSigningHash, computeBinaryTransactionSigningHash,
computeAccountRootIndex, computeAccountRootIndex,

View File

@@ -0,0 +1,25 @@
import { assert } from 'chai'
import { isValidAddress } from 'xrpl-local'
describe('isValidAddress', function () {
it('Validates valid classic address', function () {
const classic = 'r3rhWeE31Jt5sWmi4QiGLMZnY3ENgqw96W'
assert(isValidAddress(classic))
})
it('Does not validate invalid classic address', function () {
const classic = 'r3rhWeE31Jt5sWmi4QiGLMZnY3ENhqw96W'
assert(!isValidAddress(classic))
})
it('Validates valid X-Address', function () {
const xAddress = 'XV5sbjUmgPpvXv4ixFWZ5ptAYZ6PD28Sq49uo34VyjnmK5H'
assert(isValidAddress(xAddress))
})
it('Does not validate invalid X-Address', function () {
const xAddress = 'XV5sbjUmgPpvXv4ixFWZ5pfAYZ6PD28Sq49uo34VyjnmK5H'
assert(!isValidAddress(xAddress))
})
})