From b3d1cfba7ce1f8aaa42cf993bade94cac4374a00 Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Thu, 6 Dec 2018 11:26:52 +0100 Subject: [PATCH 1/2] Fix null address into checkSum address (fix #62) --- packages/abi/src/util/address.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/abi/src/util/address.ts b/packages/abi/src/util/address.ts index a6bf84d1..cce4c021 100644 --- a/packages/abi/src/util/address.ts +++ b/packages/abi/src/util/address.ts @@ -56,7 +56,7 @@ export const isAddress = (address?: string) => { * @param address - The address to convert. */ export const toChecksumAddress = (address: string = '') => { - const _address = address.toLowerCase(); + const _address = (address || '').toLowerCase(); if (!isAddress(_address)) { return ''; From 844288438c10a8479ce06103dddcada8d3013e8e Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Thu, 6 Dec 2018 11:54:09 +0100 Subject: [PATCH 2/2] Add test --- packages/abi/src/util/address.spec.ts | 4 ++++ packages/abi/src/util/address.ts | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/abi/src/util/address.spec.ts b/packages/abi/src/util/address.spec.ts index fe30b9d3..0ecea23a 100644 --- a/packages/abi/src/util/address.spec.ts +++ b/packages/abi/src/util/address.spec.ts @@ -80,6 +80,10 @@ describe('util/address', () => { expect(toChecksumAddress(undefined)).toEqual(''); }); + it('returns empty when null address specified', () => { + expect(toChecksumAddress(null)).toEqual(''); + }); + it('returns empty on invalid address structure', () => { expect(toChecksumAddress('0xnotaddress')).toEqual(''); }); diff --git a/packages/abi/src/util/address.ts b/packages/abi/src/util/address.ts index cce4c021..ede99c09 100644 --- a/packages/abi/src/util/address.ts +++ b/packages/abi/src/util/address.ts @@ -55,7 +55,7 @@ export const isAddress = (address?: string) => { * * @param address - The address to convert. */ -export const toChecksumAddress = (address: string = '') => { +export const toChecksumAddress = (address?: string | null) => { const _address = (address || '').toLowerCase(); if (!isAddress(_address)) {