From 2743eee044edfd3dafc012e31f60ecf4ee0ce30f Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Thu, 26 Jul 2018 16:30:44 -0700 Subject: Update checking for erc721 existence --- packages/contracts/test/utils/erc721_wrapper.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/erc721_wrapper.ts b/packages/contracts/test/utils/erc721_wrapper.ts index d023b4d02..0c12130a3 100644 --- a/packages/contracts/test/utils/erc721_wrapper.ts +++ b/packages/contracts/test/utils/erc721_wrapper.ts @@ -35,8 +35,6 @@ export class ERC721Wrapper { artifacts.DummyERC721Token, this._provider, txDefaults, - constants.DUMMY_TOKEN_NAME, - constants.DUMMY_TOKEN_SYMBOL, ), ); } @@ -81,7 +79,8 @@ export class ERC721Wrapper { } public async doesTokenExistAsync(tokenAddress: string, tokenId: BigNumber): Promise { const tokenContract = this._getTokenContractFromAssetData(tokenAddress); - const doesExist = await tokenContract.exists.callAsync(tokenId); + const owner = await tokenContract.ownerOf.callAsync(tokenId); + const doesExist = owner !== constants.NULL_ADDRESS; return doesExist; } public async approveProxyAsync(tokenAddress: string, tokenId: BigNumber): Promise { -- cgit From 7a6e6473866dae794b9876f900e5d6f5efd15911 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Fri, 27 Jul 2018 13:28:16 -0700 Subject: Add constructor back to DummyERC721Token --- packages/contracts/test/utils/erc721_wrapper.ts | 2 ++ 1 file changed, 2 insertions(+) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/erc721_wrapper.ts b/packages/contracts/test/utils/erc721_wrapper.ts index 0c12130a3..743d10706 100644 --- a/packages/contracts/test/utils/erc721_wrapper.ts +++ b/packages/contracts/test/utils/erc721_wrapper.ts @@ -35,6 +35,8 @@ export class ERC721Wrapper { artifacts.DummyERC721Token, this._provider, txDefaults, + constants.DUMMY_TOKEN_NAME, + constants.DUMMY_TOKEN_SYMBOL, ), ); } -- cgit From 4dd59a370d77e6aee2a95fc2e3b04646dd4f1f02 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Mon, 30 Jul 2018 17:14:00 -0700 Subject: Add tests for ERC20 token with no return values --- packages/contracts/test/utils/artifacts.ts | 2 ++ 1 file changed, 2 insertions(+) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/artifacts.ts b/packages/contracts/test/utils/artifacts.ts index e608ee174..65f72015f 100644 --- a/packages/contracts/test/utils/artifacts.ts +++ b/packages/contracts/test/utils/artifacts.ts @@ -4,6 +4,7 @@ import * as AssetProxyOwner from '../../artifacts/AssetProxyOwner.json'; import * as DummyERC20Token from '../../artifacts/DummyERC20Token.json'; import * as DummyERC721Receiver from '../../artifacts/DummyERC721Receiver.json'; import * as DummyERC721Token from '../../artifacts/DummyERC721Token.json'; +import * as DummyNoReturnERC20Token from '../../artifacts/DummyNoReturnERC20Token.json'; import * as ERC20Proxy from '../../artifacts/ERC20Proxy.json'; import * as ERC721Proxy from '../../artifacts/ERC721Proxy.json'; import * as Exchange from '../../artifacts/Exchange.json'; @@ -32,6 +33,7 @@ export const artifacts = { DummyERC20Token: (DummyERC20Token as any) as ContractArtifact, DummyERC721Receiver: (DummyERC721Receiver as any) as ContractArtifact, DummyERC721Token: (DummyERC721Token as any) as ContractArtifact, + DummyNoReturnERC20Token: (DummyNoReturnERC20Token as any) as ContractArtifact, ERC20Proxy: (ERC20Proxy as any) as ContractArtifact, ERC721Proxy: (ERC721Proxy as any) as ContractArtifact, Exchange: (Exchange as any) as ContractArtifact, -- cgit From 0b9a9d92afc48745b2e4b438f31640c362882f78 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Sun, 12 Aug 2018 19:34:03 -0500 Subject: Add tests for ERC721Token --- packages/contracts/test/utils/artifacts.ts | 2 ++ packages/contracts/test/utils/log_decoder.ts | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/artifacts.ts b/packages/contracts/test/utils/artifacts.ts index 65f72015f..e86ad5406 100644 --- a/packages/contracts/test/utils/artifacts.ts +++ b/packages/contracts/test/utils/artifacts.ts @@ -11,6 +11,7 @@ import * as Exchange from '../../artifacts/Exchange.json'; import * as ExchangeWrapper from '../../artifacts/ExchangeWrapper.json'; import * as Forwarder from '../../artifacts/Forwarder.json'; import * as IAssetProxy from '../../artifacts/IAssetProxy.json'; +import * as InvalidERC721Receiver from '../../artifacts/InvalidERC721Receiver.json'; import * as MixinAuthorizable from '../../artifacts/MixinAuthorizable.json'; import * as MultiSigWallet from '../../artifacts/MultiSigWallet.json'; import * as MultiSigWalletWithTimeLock from '../../artifacts/MultiSigWalletWithTimeLock.json'; @@ -41,6 +42,7 @@ export const artifacts = { EtherToken: (EtherToken as any) as ContractArtifact, Forwarder: (Forwarder as any) as ContractArtifact, IAssetProxy: (IAssetProxy as any) as ContractArtifact, + InvalidERC721Receiver: (InvalidERC721Receiver as any) as ContractArtifact, MixinAuthorizable: (MixinAuthorizable as any) as ContractArtifact, MultiSigWallet: (MultiSigWallet as any) as ContractArtifact, MultiSigWalletWithTimeLock: (MultiSigWalletWithTimeLock as any) as ContractArtifact, diff --git a/packages/contracts/test/utils/log_decoder.ts b/packages/contracts/test/utils/log_decoder.ts index 5a4801319..31e8679be 100644 --- a/packages/contracts/test/utils/log_decoder.ts +++ b/packages/contracts/test/utils/log_decoder.ts @@ -48,7 +48,6 @@ export class LogDecoder { } public async getTxWithDecodedLogsAsync(txHash: string): Promise { const tx = await this._web3Wrapper.awaitTransactionSuccessAsync(txHash, constants.AWAIT_TRANSACTION_MINED_MS); - tx.logs = _.filter(tx.logs, log => log.address === this._contractAddress); tx.logs = _.map(tx.logs, log => this.decodeLogOrThrow(log)); return tx; } -- cgit From a4d6bc3190049996e68076eaf56762c05a71c88e Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Sun, 12 Aug 2018 19:56:09 -0500 Subject: Fix tests that assumed logs were being filtered --- packages/contracts/test/utils/exchange_wrapper.ts | 3 +++ packages/contracts/test/utils/fill_order_combinatorial_utils.ts | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/exchange_wrapper.ts b/packages/contracts/test/utils/exchange_wrapper.ts index d57592d6d..f2b9e76d7 100644 --- a/packages/contracts/test/utils/exchange_wrapper.ts +++ b/packages/contracts/test/utils/exchange_wrapper.ts @@ -266,4 +266,7 @@ export class ExchangeWrapper { ); return data; } + public getExchangeAddress(): string { + return this._exchange.address; + } } diff --git a/packages/contracts/test/utils/fill_order_combinatorial_utils.ts b/packages/contracts/test/utils/fill_order_combinatorial_utils.ts index f18ad0dd3..a9318571c 100644 --- a/packages/contracts/test/utils/fill_order_combinatorial_utils.ts +++ b/packages/contracts/test/utils/fill_order_combinatorial_utils.ts @@ -504,7 +504,11 @@ export class FillOrderCombinatorialUtils { const actFilledTakerAmount = await this.exchangeWrapper.getTakerAssetFilledAmountAsync(orderHash); expect(actFilledTakerAmount).to.be.bignumber.equal(expFilledTakerAmount, 'filledTakerAmount'); - expect(txReceipt.logs.length).to.be.equal(1, 'logs length'); + const exchangeLogs = _.filter( + txReceipt.logs, + txLog => txLog.address === this.exchangeWrapper.getExchangeAddress(), + ); + expect(exchangeLogs.length).to.be.equal(1, 'logs length'); // tslint:disable-next-line:no-unnecessary-type-assertion const log = txReceipt.logs[0] as LogWithDecodedArgs; expect(log.args.makerAddress).to.be.equal(makerAddress, 'log.args.makerAddress'); -- cgit From 633e6c38c8fe47a8a1ee6fc406704aefa6ed0b3a Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Sun, 12 Aug 2018 22:20:43 -0700 Subject: Fix linting errors --- packages/contracts/test/utils/exchange_wrapper.ts | 2 +- packages/contracts/test/utils/forwarder_wrapper.ts | 2 +- packages/contracts/test/utils/log_decoder.ts | 4 +--- packages/contracts/test/utils/multi_sig_wrapper.ts | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/exchange_wrapper.ts b/packages/contracts/test/utils/exchange_wrapper.ts index f2b9e76d7..619d43994 100644 --- a/packages/contracts/test/utils/exchange_wrapper.ts +++ b/packages/contracts/test/utils/exchange_wrapper.ts @@ -17,7 +17,7 @@ export class ExchangeWrapper { constructor(exchangeContract: ExchangeContract, provider: Provider) { this._exchange = exchangeContract; this._web3Wrapper = new Web3Wrapper(provider); - this._logDecoder = new LogDecoder(this._web3Wrapper, this._exchange.address); + this._logDecoder = new LogDecoder(this._web3Wrapper); } public async fillOrderAsync( signedOrder: SignedOrder, diff --git a/packages/contracts/test/utils/forwarder_wrapper.ts b/packages/contracts/test/utils/forwarder_wrapper.ts index 5b9a63ddf..de247a878 100644 --- a/packages/contracts/test/utils/forwarder_wrapper.ts +++ b/packages/contracts/test/utils/forwarder_wrapper.ts @@ -58,7 +58,7 @@ export class ForwarderWrapper { constructor(contractInstance: ForwarderContract, provider: Provider) { this._forwarderContract = contractInstance; this._web3Wrapper = new Web3Wrapper(provider); - this._logDecoder = new LogDecoder(this._web3Wrapper, this._forwarderContract.address); + this._logDecoder = new LogDecoder(this._web3Wrapper); } public async marketSellOrdersWithEthAsync( orders: SignedOrder[], diff --git a/packages/contracts/test/utils/log_decoder.ts b/packages/contracts/test/utils/log_decoder.ts index 31e8679be..6064ef0f7 100644 --- a/packages/contracts/test/utils/log_decoder.ts +++ b/packages/contracts/test/utils/log_decoder.ts @@ -16,7 +16,6 @@ import { constants } from './constants'; export class LogDecoder { private readonly _web3Wrapper: Web3Wrapper; - private readonly _contractAddress: string; private readonly _abiDecoder: AbiDecoder; public static wrapLogBigNumbers(log: any): any { const argNames = _.keys(log.args); @@ -27,9 +26,8 @@ export class LogDecoder { } } } - constructor(web3Wrapper: Web3Wrapper, contractAddress: string) { + constructor(web3Wrapper: Web3Wrapper) { this._web3Wrapper = web3Wrapper; - this._contractAddress = contractAddress; const abiArrays: AbiDefinition[][] = []; _.forEach(artifacts, (artifact: ContractArtifact) => { const compilerOutput = artifact.compilerOutput; diff --git a/packages/contracts/test/utils/multi_sig_wrapper.ts b/packages/contracts/test/utils/multi_sig_wrapper.ts index 8c8055d4a..e0c27b839 100644 --- a/packages/contracts/test/utils/multi_sig_wrapper.ts +++ b/packages/contracts/test/utils/multi_sig_wrapper.ts @@ -16,7 +16,7 @@ export class MultiSigWrapper { constructor(multiSigContract: MultiSigWalletContract, provider: Provider) { this._multiSig = multiSigContract; this._web3Wrapper = new Web3Wrapper(provider); - this._logDecoder = new LogDecoder(this._web3Wrapper, this._multiSig.address); + this._logDecoder = new LogDecoder(this._web3Wrapper); } public async submitTransactionAsync( destination: string, -- cgit From dafb282432f51b670e5117e70e7a15cd64aea899 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Sun, 19 Aug 2018 20:43:19 -0700 Subject: Add tests --- packages/contracts/test/utils/artifacts.ts | 2 ++ 1 file changed, 2 insertions(+) (limited to 'packages/contracts/test/utils') diff --git a/packages/contracts/test/utils/artifacts.ts b/packages/contracts/test/utils/artifacts.ts index e86ad5406..21dd932c6 100644 --- a/packages/contracts/test/utils/artifacts.ts +++ b/packages/contracts/test/utils/artifacts.ts @@ -15,6 +15,7 @@ import * as InvalidERC721Receiver from '../../artifacts/InvalidERC721Receiver.js import * as MixinAuthorizable from '../../artifacts/MixinAuthorizable.json'; import * as MultiSigWallet from '../../artifacts/MultiSigWallet.json'; import * as MultiSigWalletWithTimeLock from '../../artifacts/MultiSigWalletWithTimeLock.json'; +import * as OrderValidator from '../../artifacts/OrderValidator.json'; import * as TestAssetProxyDispatcher from '../../artifacts/TestAssetProxyDispatcher.json'; import * as TestAssetProxyOwner from '../../artifacts/TestAssetProxyOwner.json'; import * as TestConstants from '../../artifacts/TestConstants.json'; @@ -46,6 +47,7 @@ export const artifacts = { MixinAuthorizable: (MixinAuthorizable as any) as ContractArtifact, MultiSigWallet: (MultiSigWallet as any) as ContractArtifact, MultiSigWalletWithTimeLock: (MultiSigWalletWithTimeLock as any) as ContractArtifact, + OrderValidator: (OrderValidator as any) as ContractArtifact, TestAssetProxyOwner: (TestAssetProxyOwner as any) as ContractArtifact, TestAssetProxyDispatcher: (TestAssetProxyDispatcher as any) as ContractArtifact, TestConstants: (TestConstants as any) as ContractArtifact, -- cgit