Rebase against 3.0
This commit is contained in:
parent
c2752d5931
commit
2ff3735adc
@ -76,6 +76,8 @@ describe('Exchange core', () => {
|
|||||||
let multiAssetProxy: MultiAssetProxyContract;
|
let multiAssetProxy: MultiAssetProxyContract;
|
||||||
let validatorWallet: TestValidatorWalletContract;
|
let validatorWallet: TestValidatorWalletContract;
|
||||||
let erc1155Contract: ERC1155MintableContract;
|
let erc1155Contract: ERC1155MintableContract;
|
||||||
|
let staticCallProxy: StaticCallProxyContract;
|
||||||
|
let staticCallTarget: TestStaticCallTargetContract;
|
||||||
|
|
||||||
let signedOrder: SignedOrder;
|
let signedOrder: SignedOrder;
|
||||||
let erc20Balances: ERC20BalancesByOwner;
|
let erc20Balances: ERC20BalancesByOwner;
|
||||||
|
@ -197,62 +197,6 @@ export class CoordinatorContract extends BaseContract {
|
|||||||
return abiEncodedTransactionData;
|
return abiEncodedTransactionData;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
public getTransactionHash = {
|
|
||||||
async callAsync(
|
|
||||||
transaction: {salt: BigNumber;signerAddress: string;data: string},
|
|
||||||
callData: Partial<CallData> = {},
|
|
||||||
defaultBlock?: BlockParam,
|
|
||||||
): Promise<string
|
|
||||||
> {
|
|
||||||
const self = this as any as CoordinatorContract;
|
|
||||||
const encodedData = self._strictEncodeArguments('getTransactionHash((uint256,address,bytes))', [transaction
|
|
||||||
]);
|
|
||||||
const callDataWithDefaults = await BaseContract._applyDefaultsToTxDataAsync(
|
|
||||||
{
|
|
||||||
to: self.address,
|
|
||||||
...callData,
|
|
||||||
data: encodedData,
|
|
||||||
},
|
|
||||||
self._web3Wrapper.getContractDefaults(),
|
|
||||||
);
|
|
||||||
const rawCallResult = await self._web3Wrapper.callAsync(callDataWithDefaults, defaultBlock);
|
|
||||||
BaseContract._throwIfRevertWithReasonCallResult(rawCallResult);
|
|
||||||
const abiEncoder = self._lookupAbiEncoder('getTransactionHash((uint256,address,bytes))');
|
|
||||||
// tslint:disable boolean-naming
|
|
||||||
const result = abiEncoder.strictDecodeReturnValue<string
|
|
||||||
>(rawCallResult);
|
|
||||||
// tslint:enable boolean-naming
|
|
||||||
return result;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
public getCoordinatorApprovalHash = {
|
|
||||||
async callAsync(
|
|
||||||
approval: {txOrigin: string;transactionHash: string;transactionSignature: string;approvalExpirationTimeSeconds: BigNumber},
|
|
||||||
callData: Partial<CallData> = {},
|
|
||||||
defaultBlock?: BlockParam,
|
|
||||||
): Promise<string
|
|
||||||
> {
|
|
||||||
const self = this as any as CoordinatorContract;
|
|
||||||
const encodedData = self._strictEncodeArguments('getCoordinatorApprovalHash((address,bytes32,bytes,uint256))', [approval
|
|
||||||
]);
|
|
||||||
const callDataWithDefaults = await BaseContract._applyDefaultsToTxDataAsync(
|
|
||||||
{
|
|
||||||
to: self.address,
|
|
||||||
...callData,
|
|
||||||
data: encodedData,
|
|
||||||
},
|
|
||||||
self._web3Wrapper.getContractDefaults(),
|
|
||||||
);
|
|
||||||
const rawCallResult = await self._web3Wrapper.callAsync(callDataWithDefaults, defaultBlock);
|
|
||||||
BaseContract._throwIfRevertWithReasonCallResult(rawCallResult);
|
|
||||||
const abiEncoder = self._lookupAbiEncoder('getCoordinatorApprovalHash((address,bytes32,bytes,uint256))');
|
|
||||||
// tslint:disable boolean-naming
|
|
||||||
const result = abiEncoder.strictDecodeReturnValue<string
|
|
||||||
>(rawCallResult);
|
|
||||||
// tslint:enable boolean-naming
|
|
||||||
return result;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
public executeTransaction = {
|
public executeTransaction = {
|
||||||
async sendTransactionAsync(
|
async sendTransactionAsync(
|
||||||
transaction: { salt: BigNumber; signerAddress: string; data: string },
|
transaction: { salt: BigNumber; signerAddress: string; data: string },
|
||||||
@ -492,32 +436,6 @@ export class CoordinatorContract extends BaseContract {
|
|||||||
return abiEncodedTransactionData;
|
return abiEncodedTransactionData;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
public EIP712_EXCHANGE_DOMAIN_HASH = {
|
|
||||||
async callAsync(
|
|
||||||
callData: Partial<CallData> = {},
|
|
||||||
defaultBlock?: BlockParam,
|
|
||||||
): Promise<string
|
|
||||||
> {
|
|
||||||
const self = this as any as CoordinatorContract;
|
|
||||||
const encodedData = self._strictEncodeArguments('EIP712_EXCHANGE_DOMAIN_HASH()', []);
|
|
||||||
const callDataWithDefaults = await BaseContract._applyDefaultsToTxDataAsync(
|
|
||||||
{
|
|
||||||
to: self.address,
|
|
||||||
...callData,
|
|
||||||
data: encodedData,
|
|
||||||
},
|
|
||||||
self._web3Wrapper.getContractDefaults(),
|
|
||||||
);
|
|
||||||
const rawCallResult = await self._web3Wrapper.callAsync(callDataWithDefaults, defaultBlock);
|
|
||||||
BaseContract._throwIfRevertWithReasonCallResult(rawCallResult);
|
|
||||||
const abiEncoder = self._lookupAbiEncoder('EIP712_EXCHANGE_DOMAIN_HASH()');
|
|
||||||
// tslint:disable boolean-naming
|
|
||||||
const result = abiEncoder.strictDecodeReturnValue<string
|
|
||||||
>(rawCallResult);
|
|
||||||
// tslint:enable boolean-naming
|
|
||||||
return result;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
public assertValidCoordinatorApprovals = {
|
public assertValidCoordinatorApprovals = {
|
||||||
async callAsync(
|
async callAsync(
|
||||||
transaction: { salt: BigNumber; signerAddress: string; data: string },
|
transaction: { salt: BigNumber; signerAddress: string; data: string },
|
||||||
|
@ -4875,7 +4875,6 @@ export class ExchangeContract extends BaseContract {
|
|||||||
supportedProvider: SupportedProvider,
|
supportedProvider: SupportedProvider,
|
||||||
txDefaults: Partial<TxData>,
|
txDefaults: Partial<TxData>,
|
||||||
_zrxAssetData: string,
|
_zrxAssetData: string,
|
||||||
_chainId: BigNumber,
|
|
||||||
): Promise<ExchangeContract> {
|
): Promise<ExchangeContract> {
|
||||||
assert.doesConformToSchema('txDefaults', txDefaults, schemas.txDataSchema, [
|
assert.doesConformToSchema('txDefaults', txDefaults, schemas.txDataSchema, [
|
||||||
schemas.addressSchema,
|
schemas.addressSchema,
|
||||||
@ -4888,8 +4887,7 @@ export class ExchangeContract extends BaseContract {
|
|||||||
const provider = providerUtils.standardizeOrThrow(supportedProvider);
|
const provider = providerUtils.standardizeOrThrow(supportedProvider);
|
||||||
const bytecode = artifact.compilerOutput.evm.bytecode.object;
|
const bytecode = artifact.compilerOutput.evm.bytecode.object;
|
||||||
const abi = artifact.compilerOutput.abi;
|
const abi = artifact.compilerOutput.abi;
|
||||||
return ExchangeContract.deployAsync(bytecode, abi, provider, txDefaults, _zrxAssetData,
|
return ExchangeContract.deployAsync(bytecode, abi, provider, txDefaults, _zrxAssetData
|
||||||
_chainId
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
public static async deployAsync(
|
public static async deployAsync(
|
||||||
@ -4898,7 +4896,6 @@ _chainId
|
|||||||
supportedProvider: SupportedProvider,
|
supportedProvider: SupportedProvider,
|
||||||
txDefaults: Partial<TxData>,
|
txDefaults: Partial<TxData>,
|
||||||
_zrxAssetData: string,
|
_zrxAssetData: string,
|
||||||
_chainId: BigNumber,
|
|
||||||
): Promise<ExchangeContract> {
|
): Promise<ExchangeContract> {
|
||||||
assert.isHexString('bytecode', bytecode);
|
assert.isHexString('bytecode', bytecode);
|
||||||
assert.doesConformToSchema('txDefaults', txDefaults, schemas.txDataSchema, [
|
assert.doesConformToSchema('txDefaults', txDefaults, schemas.txDataSchema, [
|
||||||
@ -4908,19 +4905,16 @@ _chainId
|
|||||||
]);
|
]);
|
||||||
const provider = providerUtils.standardizeOrThrow(supportedProvider);
|
const provider = providerUtils.standardizeOrThrow(supportedProvider);
|
||||||
const constructorAbi = BaseContract._lookupConstructorAbi(abi);
|
const constructorAbi = BaseContract._lookupConstructorAbi(abi);
|
||||||
[_zrxAssetData,
|
[_zrxAssetData
|
||||||
_chainId
|
|
||||||
] = BaseContract._formatABIDataItemList(
|
] = BaseContract._formatABIDataItemList(
|
||||||
constructorAbi.inputs,
|
constructorAbi.inputs,
|
||||||
[_zrxAssetData,
|
[_zrxAssetData
|
||||||
_chainId
|
|
||||||
],
|
],
|
||||||
BaseContract._bigNumberToString,
|
BaseContract._bigNumberToString,
|
||||||
);
|
);
|
||||||
const iface = new ethers.utils.Interface(abi);
|
const iface = new ethers.utils.Interface(abi);
|
||||||
const deployInfo = iface.deployFunction;
|
const deployInfo = iface.deployFunction;
|
||||||
const txData = deployInfo.encode(bytecode, [_zrxAssetData,
|
const txData = deployInfo.encode(bytecode, [_zrxAssetData
|
||||||
_chainId
|
|
||||||
]);
|
]);
|
||||||
const web3Wrapper = new Web3Wrapper(provider);
|
const web3Wrapper = new Web3Wrapper(provider);
|
||||||
const txDataWithDefaults = await BaseContract._applyDefaultsToTxDataAsync(
|
const txDataWithDefaults = await BaseContract._applyDefaultsToTxDataAsync(
|
||||||
@ -4933,8 +4927,7 @@ _chainId
|
|||||||
const txReceipt = await web3Wrapper.awaitTransactionSuccessAsync(txHash);
|
const txReceipt = await web3Wrapper.awaitTransactionSuccessAsync(txHash);
|
||||||
logUtils.log(`Exchange successfully deployed at ${txReceipt.contractAddress}`);
|
logUtils.log(`Exchange successfully deployed at ${txReceipt.contractAddress}`);
|
||||||
const contractInstance = new ExchangeContract(abi, txReceipt.contractAddress as string, provider, txDefaults);
|
const contractInstance = new ExchangeContract(abi, txReceipt.contractAddress as string, provider, txDefaults);
|
||||||
contractInstance.constructorArgs = [_zrxAssetData,
|
contractInstance.constructorArgs = [_zrxAssetData
|
||||||
_chainId
|
|
||||||
];
|
];
|
||||||
return contractInstance;
|
return contractInstance;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user