diff options
author | Fabio Berger <me@fabioberger.com> | 2018-04-12 07:53:32 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-12 07:53:32 +0800 |
commit | c47fb8f9a83d409c092dd7449054fa16cf0fa1c9 (patch) | |
tree | 3e5e1b9f8e4588f811b203806ffde6864f0e09de /packages/0x.js/test/0x.js_test.ts | |
parent | e8d4f6d5322930cf8618abcb9fea7c773a87ecd7 (diff) | |
parent | 27b915789efcacbeb0bfbe943f917c590cfaff4a (diff) | |
download | dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar.gz dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar.bz2 dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar.lz dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar.xz dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.tar.zst dexon-sol-tools-c47fb8f9a83d409c092dd7449054fa16cf0fa1c9.zip |
Merge pull request #500 from 0xProject/removeMigrateStep
Run all tests against in-process Ganache
Diffstat (limited to 'packages/0x.js/test/0x.js_test.ts')
-rw-r--r-- | packages/0x.js/test/0x.js_test.ts | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/packages/0x.js/test/0x.js_test.ts b/packages/0x.js/test/0x.js_test.ts index 70e85aa52..de5a6be58 100644 --- a/packages/0x.js/test/0x.js_test.ts +++ b/packages/0x.js/test/0x.js_test.ts @@ -1,16 +1,23 @@ +import { Deployer } from '@0xproject/deployer'; import { BlockchainLifecycle, devConstants, web3Factory } from '@0xproject/dev-utils'; +// HACK: This dependency is optional since it is only available when run from within +// the monorepo. tslint doesn't handle optional dependencies +// tslint:disable-next-line:no-implicit-dependencies +import { runMigrationsAsync } from '@0xproject/migrations'; import { BigNumber } from '@0xproject/utils'; import * as chai from 'chai'; import * as _ from 'lodash'; import 'mocha'; +import * as path from 'path'; import * as Sinon from 'sinon'; import { ApprovalContractEventArgs, LogWithDecodedArgs, Order, TokenEvents, ZeroEx } from '../src'; import { chaiSetup } from './utils/chai_setup'; import { constants } from './utils/constants'; +import { deployer } from './utils/deployer'; import { TokenUtils } from './utils/token_utils'; -import { web3, web3Wrapper } from './utils/web3_wrapper'; +import { provider, web3Wrapper } from './utils/web3_wrapper'; const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper); chaiSetup.configure(); @@ -19,10 +26,14 @@ const expect = chai.expect; const SHOULD_ADD_PERSONAL_MESSAGE_PREFIX = false; describe('ZeroEx library', () => { - const config = { - networkId: constants.TESTRPC_NETWORK_ID, - }; - const zeroEx = new ZeroEx(web3.currentProvider, config); + let zeroEx: ZeroEx; + before(async () => { + await runMigrationsAsync(deployer); + const config = { + networkId: constants.TESTRPC_NETWORK_ID, + }; + zeroEx = new ZeroEx(provider, config); + }); describe('#setProvider', () => { it('overrides provider in nested web3s and invalidates contractInstances', async () => { // Instantiate the contract instances with the current provider @@ -31,10 +42,9 @@ describe('ZeroEx library', () => { expect((zeroEx.exchange as any)._exchangeContractIfExists).to.not.be.undefined(); expect((zeroEx.tokenRegistry as any)._tokenRegistryContractIfExists).to.not.be.undefined(); - const newProvider = web3Factory.getRpcProvider(); // Add property to newProvider so that we can differentiate it from old provider - (newProvider as any).zeroExTestId = 1; - zeroEx.setProvider(newProvider, constants.TESTRPC_NETWORK_ID); + (provider as any).zeroExTestId = 1; + zeroEx.setProvider(provider, constants.TESTRPC_NETWORK_ID); // Check that contractInstances with old provider are removed after provider update expect((zeroEx.exchange as any)._exchangeContractIfExists).to.be.undefined(); @@ -278,7 +288,7 @@ describe('ZeroEx library', () => { exchangeContractAddress: ZeroEx.NULL_ADDRESS, networkId: constants.TESTRPC_NETWORK_ID, }; - const zeroExWithWrongExchangeAddress = new ZeroEx(web3.currentProvider, zeroExConfig); + const zeroExWithWrongExchangeAddress = new ZeroEx(provider, zeroExConfig); expect(zeroExWithWrongExchangeAddress.exchange.getContractAddress()).to.be.equal(ZeroEx.NULL_ADDRESS); }); it('allows to specify token registry token contract address', async () => { @@ -286,7 +296,7 @@ describe('ZeroEx library', () => { tokenRegistryContractAddress: ZeroEx.NULL_ADDRESS, networkId: constants.TESTRPC_NETWORK_ID, }; - const zeroExWithWrongTokenRegistryAddress = new ZeroEx(web3.currentProvider, zeroExConfig); + const zeroExWithWrongTokenRegistryAddress = new ZeroEx(provider, zeroExConfig); expect(zeroExWithWrongTokenRegistryAddress.tokenRegistry.getContractAddress()).to.be.equal( ZeroEx.NULL_ADDRESS, ); |