diff options
-rw-r--r-- | src/0x.js.ts | 2 | ||||
-rw-r--r-- | src/web3_wrapper.ts | 7 | ||||
-rw-r--r-- | test/0x.js_test.ts | 8 |
3 files changed, 8 insertions, 9 deletions
diff --git a/src/0x.js.ts b/src/0x.js.ts index 7e48bc0a5..f3da005f8 100644 --- a/src/0x.js.ts +++ b/src/0x.js.ts @@ -18,9 +18,9 @@ import {SolidityTypes, ECSignature, ZeroExError} from './types'; const MAX_DIGITS_IN_UNSIGNED_256_INT = 78; export class ZeroEx { - public web3Wrapper: Web3Wrapper; public exchange: ExchangeWrapper; public tokenRegistry: TokenRegistryWrapper; + private web3Wrapper: Web3Wrapper; /** * Computes the orderHash given the order parameters and returns it as a hex encoded string. */ diff --git a/src/web3_wrapper.ts b/src/web3_wrapper.ts index 97d04db8c..a915a89e8 100644 --- a/src/web3_wrapper.ts +++ b/src/web3_wrapper.ts @@ -49,10 +49,9 @@ export class Web3Wrapper { } public async doesContractExistAtAddressAsync(address: string): Promise<boolean> { const code = await promisify(this.web3.eth.getCode)(address); - // Regex matches 0x0, 0x00, 0x in order to accomodate poorly implemented clients - const zeroHexAddressRegex = /^0x0*$/i; - const didFindCode = _.isNull(code.match(zeroHexAddressRegex)); - return didFindCode; + // Regex matches 0x0, 0x00, 0x in order to accommodate poorly implemented clients + const codeIsEmpty = /^0x0{0,40}$/i.test(code); + return !codeIsEmpty; } public async signTransactionAsync(address: string, message: string): Promise<string> { const signData = await promisify(this.web3.eth.sign)(address, message); diff --git a/test/0x.js_test.ts b/test/0x.js_test.ts index bb312a00f..c45c70991 100644 --- a/test/0x.js_test.ts +++ b/test/0x.js_test.ts @@ -194,9 +194,9 @@ describe('ZeroEx library', () => { const web3 = web3Factory.create(); const zeroEx = new ZeroEx(web3); stubs = [ - Sinon.stub(zeroEx.web3Wrapper, 'getNodeVersionAsync') + Sinon.stub((zeroEx as any).web3Wrapper, 'getNodeVersionAsync') .returns(Promise.resolve(newParityNodeVersion)), - Sinon.stub(zeroEx.web3Wrapper, 'signTransactionAsync') + Sinon.stub((zeroEx as any).web3Wrapper, 'signTransactionAsync') .returns(Promise.resolve(signature)), Sinon.stub(ZeroEx, 'isValidSignature').returns(true), ]; @@ -218,9 +218,9 @@ describe('ZeroEx library', () => { const web3 = web3Factory.create(); const zeroEx = new ZeroEx(web3); stubs = [ - Sinon.stub(zeroEx.web3Wrapper, 'getNodeVersionAsync') + Sinon.stub((zeroEx as any).web3Wrapper, 'getNodeVersionAsync') .returns(Promise.resolve(newParityNodeVersion)), - Sinon.stub(zeroEx.web3Wrapper, 'signTransactionAsync') + Sinon.stub((zeroEx as any).web3Wrapper, 'signTransactionAsync') .returns(Promise.resolve(signature)), Sinon.stub(ZeroEx, 'isValidSignature').returns(true), ]; |