aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2017-05-30 18:36:28 +0800
committerFabio Berger <me@fabioberger.com>2017-05-30 18:36:28 +0800
commit02d7f808ab0a38e145c619b360738dc976898d54 (patch)
tree658094383e06e2b4df944486f7caeb54550007ea
parent4d63a4d02a68974df75c9cae85d43c0ba628c740 (diff)
parent73ae3df172b1fdb7e6a3f5cbb866b09fb5f9d032 (diff)
downloaddexon-0x-contracts-02d7f808ab0a38e145c619b360738dc976898d54.tar.gz
dexon-0x-contracts-02d7f808ab0a38e145c619b360738dc976898d54.tar.zst
dexon-0x-contracts-02d7f808ab0a38e145c619b360738dc976898d54.zip
Merge branch 'master' into tokenRegistry
# Conflicts: # src/0x.js.ts
-rw-r--r--src/0x.js.ts2
-rw-r--r--src/web3_wrapper.ts7
-rw-r--r--test/0x.js_test.ts8
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),
];