aboutsummaryrefslogtreecommitdiffstats
path: root/packages/contracts/test
diff options
context:
space:
mode:
Diffstat (limited to 'packages/contracts/test')
-rw-r--r--packages/contracts/test/asset_proxy/authorizable.ts (renamed from packages/contracts/test/asset_proxy_dispatcher/auth.ts)46
-rw-r--r--packages/contracts/test/asset_proxy/proxies.ts (renamed from packages/contracts/test/asset_proxy_dispatcher/proxies.ts)25
-rw-r--r--packages/contracts/test/exchange/core.ts69
-rw-r--r--packages/contracts/test/exchange/dispatcher.ts (renamed from packages/contracts/test/asset_proxy_dispatcher/dispatcher.ts)49
-rw-r--r--packages/contracts/test/exchange/helpers.ts5
-rw-r--r--packages/contracts/test/exchange/wrapper.ts40
6 files changed, 59 insertions, 175 deletions
diff --git a/packages/contracts/test/asset_proxy_dispatcher/auth.ts b/packages/contracts/test/asset_proxy/authorizable.ts
index 9d8645ab7..cc4f78a31 100644
--- a/packages/contracts/test/asset_proxy_dispatcher/auth.ts
+++ b/packages/contracts/test/asset_proxy/authorizable.ts
@@ -3,7 +3,7 @@ import { Web3Wrapper } from '@0xproject/web3-wrapper';
import * as chai from 'chai';
import * as Web3 from 'web3';
-import { AssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/asset_proxy_dispatcher';
+import { AuthorizableContract } from '../../src/contract_wrappers/generated/authorizable';
import { constants } from '../../src/utils/constants';
import { ContractName } from '../../src/utils/types';
import { chaiSetup } from '../utils/chai_setup';
@@ -14,21 +14,17 @@ chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
-describe('AssetProxyDispatcher (Authorization Methods)', () => {
+describe('Authorizable', () => {
let owner: string;
let notOwner: string;
let address: string;
- let assetProxyDispatcher: AssetProxyDispatcherContract;
+ let authorizable: AuthorizableContract;
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
owner = address = accounts[0];
notOwner = accounts[1];
- const assetProxyDispatcherInstance = await deployer.deployAsync(ContractName.AssetProxyDispatcher);
- assetProxyDispatcher = new AssetProxyDispatcherContract(
- assetProxyDispatcherInstance.abi,
- assetProxyDispatcherInstance.address,
- provider,
- );
+ const authorizableInstance = await deployer.deployAsync(ContractName.Authorizable);
+ authorizable = new AuthorizableContract(authorizableInstance.abi, authorizableInstance.address, provider);
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
@@ -39,44 +35,44 @@ describe('AssetProxyDispatcher (Authorization Methods)', () => {
describe('addAuthorizedAddress', () => {
it('should throw if not called by owner', async () => {
return expect(
- assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(notOwner, { from: notOwner }),
+ authorizable.addAuthorizedAddress.sendTransactionAsync(notOwner, { from: notOwner }),
).to.be.rejectedWith(constants.REVERT);
});
it('should allow owner to add an authorized address', async () => {
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
- const isAuthorized = await assetProxyDispatcher.authorized.callAsync(address);
+ await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
+ const isAuthorized = await authorizable.authorized.callAsync(address);
expect(isAuthorized).to.be.true();
});
it('should throw if owner attempts to authorize a duplicate address', async () => {
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
+ await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
return expect(
- assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
+ authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
).to.be.rejectedWith(constants.REVERT);
});
});
describe('removeAuthorizedAddress', () => {
it('should throw if not called by owner', async () => {
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
+ await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
return expect(
- assetProxyDispatcher.removeAuthorizedAddress.sendTransactionAsync(address, {
+ authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: notOwner,
}),
).to.be.rejectedWith(constants.REVERT);
});
it('should allow owner to remove an authorized address', async () => {
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
- await assetProxyDispatcher.removeAuthorizedAddress.sendTransactionAsync(address, {
+ await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner });
+ await authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
});
- const isAuthorized = await assetProxyDispatcher.authorized.callAsync(address);
+ const isAuthorized = await authorizable.authorized.callAsync(address);
expect(isAuthorized).to.be.false();
});
it('should throw if owner attempts to remove an address that is not authorized', async () => {
return expect(
- assetProxyDispatcher.removeAuthorizedAddress.sendTransactionAsync(address, {
+ authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
}),
).to.be.rejectedWith(constants.REVERT);
@@ -85,19 +81,19 @@ describe('AssetProxyDispatcher (Authorization Methods)', () => {
describe('getAuthorizedAddresses', () => {
it('should return all authorized addresses', async () => {
- const initial = await assetProxyDispatcher.getAuthorizedAddresses.callAsync();
+ const initial = await authorizable.getAuthorizedAddresses.callAsync();
expect(initial).to.have.length(0);
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(address, {
+ await authorizable.addAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
});
- const afterAdd = await assetProxyDispatcher.getAuthorizedAddresses.callAsync();
+ const afterAdd = await authorizable.getAuthorizedAddresses.callAsync();
expect(afterAdd).to.have.length(1);
expect(afterAdd).to.include(address);
- await assetProxyDispatcher.removeAuthorizedAddress.sendTransactionAsync(address, {
+ await authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
});
- const afterRemove = await assetProxyDispatcher.getAuthorizedAddresses.callAsync();
+ const afterRemove = await authorizable.getAuthorizedAddresses.callAsync();
expect(afterRemove).to.have.length(0);
});
});
diff --git a/packages/contracts/test/asset_proxy_dispatcher/proxies.ts b/packages/contracts/test/asset_proxy/proxies.ts
index 830f40e13..8d60ef0e9 100644
--- a/packages/contracts/test/asset_proxy_dispatcher/proxies.ts
+++ b/packages/contracts/test/asset_proxy/proxies.ts
@@ -4,7 +4,6 @@ import { BigNumber } from '@0xproject/utils';
import * as chai from 'chai';
import * as Web3 from 'web3';
-import { AssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/asset_proxy_dispatcher';
import { DummyERC20TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c20_token';
import { DummyERC721TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c721_token';
import { ERC20ProxyContract } from '../../src/contract_wrappers/generated/e_r_c20_proxy';
@@ -25,7 +24,7 @@ const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
describe('Asset Transfer Proxies', () => {
let owner: string;
let notAuthorized: string;
- let assetProxyDispatcherAddress: string;
+ let exchangeAddress: string;
let makerAddress: string;
let takerAddress: string;
@@ -40,13 +39,7 @@ describe('Asset Transfer Proxies', () => {
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
- const usedAddresses = ([
- owner,
- notAuthorized,
- assetProxyDispatcherAddress,
- makerAddress,
- takerAddress,
- ] = accounts);
+ const usedAddresses = ([owner, notAuthorized, exchangeAddress, makerAddress, takerAddress] = accounts);
erc20Wrapper = new ERC20Wrapper(deployer, provider, usedAddresses, owner);
erc721Wrapper = new ERC721Wrapper(deployer, provider, usedAddresses, owner);
@@ -54,7 +47,7 @@ describe('Asset Transfer Proxies', () => {
[zrx] = await erc20Wrapper.deployDummyERC20TokensAsync();
erc20Proxy = await erc20Wrapper.deployERC20ProxyAsync();
await erc20Wrapper.setBalancesAndAllowancesAsync();
- await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcherAddress, {
+ await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(exchangeAddress, {
from: owner,
});
@@ -63,7 +56,7 @@ describe('Asset Transfer Proxies', () => {
await erc721Wrapper.setBalancesAndAllowancesAsync();
const erc721Balances = await erc721Wrapper.getBalancesAsync();
erc721MakerTokenId = erc721Balances[makerAddress][erc721Token.address][0];
- await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcherAddress, {
+ await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(exchangeAddress, {
from: owner,
});
});
@@ -85,7 +78,7 @@ describe('Asset Transfer Proxies', () => {
makerAddress,
takerAddress,
amount,
- { from: assetProxyDispatcherAddress },
+ { from: exchangeAddress },
);
// Verify transfer was successful
const newBalances = await erc20Wrapper.getBalancesAsync();
@@ -108,7 +101,7 @@ describe('Asset Transfer Proxies', () => {
makerAddress,
takerAddress,
amount,
- { from: assetProxyDispatcherAddress },
+ { from: exchangeAddress },
);
// Verify transfer was successful
const newBalances = await erc20Wrapper.getBalancesAsync();
@@ -169,7 +162,7 @@ describe('Asset Transfer Proxies', () => {
makerAddress,
takerAddress,
amount,
- { from: assetProxyDispatcherAddress },
+ { from: exchangeAddress },
);
// Verify transfer was successful
const newOwnerMakerAsset = await erc721Token.ownerOf.callAsync(erc721MakerTokenId);
@@ -191,7 +184,7 @@ describe('Asset Transfer Proxies', () => {
makerAddress,
takerAddress,
amount,
- { from: assetProxyDispatcherAddress },
+ { from: exchangeAddress },
),
).to.be.rejectedWith(constants.REVERT);
});
@@ -211,7 +204,7 @@ describe('Asset Transfer Proxies', () => {
makerAddress,
takerAddress,
amount,
- { from: assetProxyDispatcherAddress },
+ { from: exchangeAddress },
),
).to.be.rejectedWith(constants.REVERT);
});
diff --git a/packages/contracts/test/exchange/core.ts b/packages/contracts/test/exchange/core.ts
index 9065c5e3f..4d462826a 100644
--- a/packages/contracts/test/exchange/core.ts
+++ b/packages/contracts/test/exchange/core.ts
@@ -5,7 +5,6 @@ import * as chai from 'chai';
import ethUtil = require('ethereumjs-util');
import * as _ from 'lodash';
-import { AssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/asset_proxy_dispatcher';
import { DummyERC20TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c20_token';
import { DummyERC721TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c721_token';
import { ERC20ProxyContract } from '../../src/contract_wrappers/generated/e_r_c20_proxy';
@@ -51,7 +50,6 @@ describe('Exchange core', () => {
let zrx: DummyERC20TokenContract;
let erc721Token: DummyERC721TokenContract;
let exchange: ExchangeContract;
- let assetProxyDispatcher: AssetProxyDispatcherContract;
let erc20Proxy: ERC20ProxyContract;
let erc721Proxy: ERC721ProxyContract;
@@ -88,44 +86,24 @@ describe('Exchange core', () => {
erc721MakerAssetIds = erc721Balances[makerAddress][erc721Token.address];
erc721TakerAssetIds = erc721Balances[takerAddress][erc721Token.address];
- const assetProxyDispatcherInstance = await deployer.deployAsync(ContractName.AssetProxyDispatcher);
- assetProxyDispatcher = new AssetProxyDispatcherContract(
- assetProxyDispatcherInstance.abi,
- assetProxyDispatcherInstance.address,
- provider,
- );
- const prevERC20ProxyAddress = ZeroEx.NULL_ADDRESS;
- await assetProxyDispatcher.registerAssetProxy.sendTransactionAsync(
- AssetProxyId.ERC20,
- erc20Proxy.address,
- prevERC20ProxyAddress,
- { from: owner },
- );
- const prevERC721ProxyAddress = ZeroEx.NULL_ADDRESS;
- await assetProxyDispatcher.registerAssetProxy.sendTransactionAsync(
- AssetProxyId.ERC721,
- erc721Proxy.address,
- prevERC721ProxyAddress,
- { from: owner },
- );
- await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcher.address, {
- from: owner,
- });
- await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcher.address, {
- from: owner,
- });
-
const exchangeInstance = await deployer.deployAsync(ContractName.Exchange, [
- assetProxyDispatcher.address,
assetProxyUtils.encodeERC20ProxyData(zrx.address),
]);
exchange = new ExchangeContract(exchangeInstance.abi, exchangeInstance.address, provider);
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(exchange.address, { from: owner });
zeroEx = new ZeroEx(provider, {
exchangeContractAddress: exchange.address,
networkId: constants.TESTRPC_NETWORK_ID,
});
exchangeWrapper = new ExchangeWrapper(exchange, zeroEx);
+ await exchangeWrapper.registerAssetProxyAsync(AssetProxyId.ERC20, erc20Proxy.address, owner);
+ await exchangeWrapper.registerAssetProxyAsync(AssetProxyId.ERC721, erc721Proxy.address, owner);
+
+ await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ });
+ await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ });
defaultMakerAssetAddress = erc20TokenA.address;
defaultTakerAssetAddress = erc20TokenB.address;
@@ -467,35 +445,6 @@ describe('Exchange core', () => {
expect(orderUtils.getOrderHashHex(signedOrder)).to.be.equal(logArgs.orderHash);
});
- it('should log 1 event with the correct arguments when order has no feeRecipient', async () => {
- signedOrder = orderFactory.newSignedOrder({
- feeRecipientAddress: ZeroEx.NULL_ADDRESS,
- });
- const divisor = 2;
- const res = await exchangeWrapper.fillOrderAsync(signedOrder, takerAddress, {
- takerAssetFillAmount: signedOrder.takerAssetAmount.div(divisor),
- });
- expect(res.logs).to.have.length(1);
-
- const log = res.logs[0] as LogWithDecodedArgs<FillContractEventArgs>;
- const logArgs = log.args;
- const expectedFilledMakerAssetAmount = signedOrder.makerAssetAmount.div(divisor);
- const expectedFilledTakerAssetAmount = signedOrder.takerAssetAmount.div(divisor);
- const expectedFeeMPaid = new BigNumber(0);
- const expectedFeeTPaid = new BigNumber(0);
-
- expect(signedOrder.makerAddress).to.be.equal(logArgs.makerAddress);
- expect(takerAddress).to.be.equal(logArgs.takerAddress);
- expect(signedOrder.feeRecipientAddress).to.be.equal(logArgs.feeRecipientAddress);
- expect(signedOrder.makerAssetData).to.be.equal(logArgs.makerAssetData);
- expect(signedOrder.takerAssetData).to.be.equal(logArgs.takerAssetData);
- expect(expectedFilledMakerAssetAmount).to.be.bignumber.equal(logArgs.makerAssetFilledAmount);
- expect(expectedFilledTakerAssetAmount).to.be.bignumber.equal(logArgs.takerAssetFilledAmount);
- expect(expectedFeeMPaid).to.be.bignumber.equal(logArgs.makerFeePaid);
- expect(expectedFeeTPaid).to.be.bignumber.equal(logArgs.takerFeePaid);
- expect(orderUtils.getOrderHashHex(signedOrder)).to.be.equal(logArgs.orderHash);
- });
-
it('should throw when taker is specified and order is claimed by other', async () => {
signedOrder = orderFactory.newSignedOrder({
takerAddress: feeRecipientAddress,
diff --git a/packages/contracts/test/asset_proxy_dispatcher/dispatcher.ts b/packages/contracts/test/exchange/dispatcher.ts
index b5630d807..7d40bcfe3 100644
--- a/packages/contracts/test/asset_proxy_dispatcher/dispatcher.ts
+++ b/packages/contracts/test/exchange/dispatcher.ts
@@ -4,10 +4,10 @@ import { BigNumber } from '@0xproject/utils';
import * as chai from 'chai';
import * as Web3 from 'web3';
-import { AssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/asset_proxy_dispatcher';
import { DummyERC20TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c20_token';
import { ERC20ProxyContract } from '../../src/contract_wrappers/generated/e_r_c20_proxy';
import { ERC721ProxyContract } from '../../src/contract_wrappers/generated/e_r_c721_proxy';
+import { TestAssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/test_asset_proxy_dispatcher';
import { assetProxyUtils } from '../../src/utils/asset_proxy_utils';
import { constants } from '../../src/utils/constants';
import { ERC20Wrapper } from '../../src/utils/erc20_wrapper';
@@ -25,14 +25,13 @@ describe('AssetProxyDispatcher', () => {
let owner: string;
let notOwner: string;
let notAuthorized: string;
- let exchangeAddress: string;
let makerAddress: string;
let takerAddress: string;
let zrx: DummyERC20TokenContract;
let erc20Proxy: ERC20ProxyContract;
let erc721Proxy: ERC721ProxyContract;
- let assetProxyDispatcher: AssetProxyDispatcherContract;
+ let assetProxyDispatcher: TestAssetProxyDispatcherContract;
let erc20Wrapper: ERC20Wrapper;
let erc721Wrapper: ERC721Wrapper;
@@ -40,7 +39,7 @@ describe('AssetProxyDispatcher', () => {
before(async () => {
// Setup accounts & addresses
const accounts = await web3Wrapper.getAvailableAddressesAsync();
- const usedAddresses = ([owner, notOwner, exchangeAddress, makerAddress, takerAddress] = accounts);
+ const usedAddresses = ([owner, notOwner, makerAddress, takerAddress] = accounts);
notAuthorized = notOwner;
erc20Wrapper = new ERC20Wrapper(deployer, provider, usedAddresses, owner);
@@ -52,15 +51,12 @@ describe('AssetProxyDispatcher', () => {
erc721Proxy = await erc721Wrapper.deployERC721ProxyAsync();
- const assetProxyDispatcherInstance = await deployer.deployAsync(ContractName.AssetProxyDispatcher);
- assetProxyDispatcher = new AssetProxyDispatcherContract(
+ const assetProxyDispatcherInstance = await deployer.deployAsync(ContractName.TestAssetProxyDispatcher);
+ assetProxyDispatcher = new TestAssetProxyDispatcherContract(
assetProxyDispatcherInstance.abi,
assetProxyDispatcherInstance.address,
provider,
);
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(exchangeAddress, {
- from: owner,
- });
await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcher.address, {
from: owner,
});
@@ -219,7 +215,7 @@ describe('AssetProxyDispatcher', () => {
});
});
- describe('transferFrom', () => {
+ describe('dispatchTransferFrom', () => {
it('should dispatch transfer to registered proxy', async () => {
// Register ERC20 proxy
const prevProxyAddress = ZeroEx.NULL_ADDRESS;
@@ -234,12 +230,12 @@ describe('AssetProxyDispatcher', () => {
// Perform a transfer from makerAddress to takerAddress
const erc20Balances = await erc20Wrapper.getBalancesAsync();
const amount = new BigNumber(10);
- await assetProxyDispatcher.transferFrom.sendTransactionAsync(
+ await assetProxyDispatcher.publicDispatchTransferFrom.sendTransactionAsync(
encodedProxyMetadata,
makerAddress,
takerAddress,
amount,
- { from: exchangeAddress },
+ { from: owner },
);
// Verify transfer was successful
const newBalances = await erc20Wrapper.getBalancesAsync();
@@ -258,37 +254,12 @@ describe('AssetProxyDispatcher', () => {
const erc20Balances = await erc20Wrapper.getBalancesAsync();
const amount = new BigNumber(10);
return expect(
- assetProxyDispatcher.transferFrom.sendTransactionAsync(
- encodedProxyMetadata,
- makerAddress,
- takerAddress,
- amount,
- { from: exchangeAddress },
- ),
- ).to.be.rejectedWith(constants.REVERT);
- });
-
- it('should throw on transfer if requesting address is not authorized', async () => {
- // Register ERC20 proxy
- const prevProxyAddress = ZeroEx.NULL_ADDRESS;
- await assetProxyDispatcher.registerAssetProxy.sendTransactionAsync(
- AssetProxyId.ERC20,
- erc20Proxy.address,
- prevProxyAddress,
- { from: owner },
- );
- // Construct metadata for ERC20 proxy
- const encodedProxyMetadata = assetProxyUtils.encodeERC20ProxyData(zrx.address);
- // Perform a transfer from makerAddress to takerAddress
- const erc20Balances = await erc20Wrapper.getBalancesAsync();
- const amount = new BigNumber(10);
- return expect(
- assetProxyDispatcher.transferFrom.sendTransactionAsync(
+ assetProxyDispatcher.publicDispatchTransferFrom.sendTransactionAsync(
encodedProxyMetadata,
makerAddress,
takerAddress,
amount,
- { from: notAuthorized },
+ { from: owner },
),
).to.be.rejectedWith(constants.REVERT);
});
diff --git a/packages/contracts/test/exchange/helpers.ts b/packages/contracts/test/exchange/helpers.ts
index a5c2ca8d5..f986665ff 100644
--- a/packages/contracts/test/exchange/helpers.ts
+++ b/packages/contracts/test/exchange/helpers.ts
@@ -29,10 +29,7 @@ describe('Exchange helpers', () => {
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
const makerAddress = accounts[0];
- const exchangeInstance = await deployer.deployAsync(ContractName.Exchange, [
- ZeroEx.NULL_ADDRESS,
- AssetProxyId.ERC20,
- ]);
+ const exchangeInstance = await deployer.deployAsync(ContractName.Exchange, [AssetProxyId.ERC20]);
const exchange = new ExchangeContract(exchangeInstance.abi, exchangeInstance.address, provider);
const zeroEx = new ZeroEx(provider, { networkId: constants.TESTRPC_NETWORK_ID });
exchangeWrapper = new ExchangeWrapper(exchange, zeroEx);
diff --git a/packages/contracts/test/exchange/wrapper.ts b/packages/contracts/test/exchange/wrapper.ts
index 60f47373e..1d40bd3d9 100644
--- a/packages/contracts/test/exchange/wrapper.ts
+++ b/packages/contracts/test/exchange/wrapper.ts
@@ -6,7 +6,6 @@ import * as chai from 'chai';
import * as _ from 'lodash';
import * as Web3 from 'web3';
-import { AssetProxyDispatcherContract } from '../../src/contract_wrappers/generated/asset_proxy_dispatcher';
import { DummyERC20TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c20_token';
import { DummyERC721TokenContract } from '../../src/contract_wrappers/generated/dummy_e_r_c721_token';
import { ERC20ProxyContract } from '../../src/contract_wrappers/generated/e_r_c20_proxy';
@@ -45,7 +44,6 @@ describe('Exchange wrappers', () => {
let zrx: DummyERC20TokenContract;
let erc721Token: DummyERC721TokenContract;
let exchange: ExchangeContract;
- let assetProxyDispatcher: AssetProxyDispatcherContract;
let erc20Proxy: ERC20ProxyContract;
let erc721Proxy: ERC721ProxyContract;
@@ -81,44 +79,24 @@ describe('Exchange wrappers', () => {
erc721MakerAssetId = erc721Balances[makerAddress][erc721Token.address][0];
erc721TakerAssetId = erc721Balances[takerAddress][erc721Token.address][0];
- const assetProxyDispatcherInstance = await deployer.deployAsync(ContractName.AssetProxyDispatcher);
- assetProxyDispatcher = new AssetProxyDispatcherContract(
- assetProxyDispatcherInstance.abi,
- assetProxyDispatcherInstance.address,
- provider,
- );
- const prevERC20ProxyAddress = ZeroEx.NULL_ADDRESS;
- await assetProxyDispatcher.registerAssetProxy.sendTransactionAsync(
- AssetProxyId.ERC20,
- erc20Proxy.address,
- prevERC20ProxyAddress,
- { from: owner },
- );
- const prevERC721ProxyAddress = ZeroEx.NULL_ADDRESS;
- await assetProxyDispatcher.registerAssetProxy.sendTransactionAsync(
- AssetProxyId.ERC721,
- erc721Proxy.address,
- prevERC721ProxyAddress,
- { from: owner },
- );
- await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcher.address, {
- from: owner,
- });
- await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(assetProxyDispatcher.address, {
- from: owner,
- });
-
const exchangeInstance = await deployer.deployAsync(ContractName.Exchange, [
- assetProxyDispatcher.address,
assetProxyUtils.encodeERC20ProxyData(zrx.address),
]);
exchange = new ExchangeContract(exchangeInstance.abi, exchangeInstance.address, provider);
- await assetProxyDispatcher.addAuthorizedAddress.sendTransactionAsync(exchange.address, { from: owner });
zeroEx = new ZeroEx(provider, {
exchangeContractAddress: exchange.address,
networkId: constants.TESTRPC_NETWORK_ID,
});
exchangeWrapper = new ExchangeWrapper(exchange, zeroEx);
+ await exchangeWrapper.registerAssetProxyAsync(AssetProxyId.ERC20, erc20Proxy.address, owner);
+ await exchangeWrapper.registerAssetProxyAsync(AssetProxyId.ERC721, erc721Proxy.address, owner);
+
+ await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ });
+ await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ });
defaultMakerAssetAddress = erc20TokenA.address;
defaultTakerAssetAddress = erc20TokenB.address;