diff --git a/contracts/asset-proxy/test/erc1155_proxy.ts b/contracts/asset-proxy/test/erc1155_proxy.ts index fef6e7074f..1af6705873 100644 --- a/contracts/asset-proxy/test/erc1155_proxy.ts +++ b/contracts/asset-proxy/test/erc1155_proxy.ts @@ -17,7 +17,7 @@ import { import { BlockchainLifecycle } from '@0x/dev-utils'; import { assetDataUtils } from '@0x/order-utils'; import { AssetProxyId, RevertReason } from '@0x/types'; -import { BigNumber } from '@0x/utils'; +import { BigNumber, SafeMathRevertErrors } from '@0x/utils'; import * as chai from 'chai'; import { LogWithDecodedArgs } from 'ethereum-types'; import * as ethUtil from 'ethereumjs-util'; @@ -1747,21 +1747,20 @@ describe('ERC1155Proxy', () => { nftNotOwnerBalance, ]; await erc1155Wrapper.assertBalancesAsync(tokenHolders, tokensToTransfer, expectedInitialBalances); + const expectedError = new SafeMathRevertErrors.Uint256OverflowError(maxUintValue, valueMultiplier); // execute transfer // note - this will overflow because we are trying to transfer `maxUintValue * 2` of the 2nd token - await expectTransactionFailedAsync( - erc1155ProxyWrapper.transferFromAsync( - spender, - receiver, - erc1155Contract.address, - tokensToTransfer, - valuesToTransfer, - valueMultiplier, - receiverCallbackData, - authorized, - ), - RevertReason.Uint256Overflow, + const tx = erc1155ProxyWrapper.transferFromAsync( + spender, + receiver, + erc1155Contract.address, + tokensToTransfer, + valuesToTransfer, + valueMultiplier, + receiverCallbackData, + authorized, ); + expect(tx).to.revertWith(expectedError); }); it('should revert if transferring > 1 instances of a non-fungible token (valueMultiplier field >1)', async () => { // setup test parameters @@ -1831,20 +1830,22 @@ describe('ERC1155Proxy', () => { // check balances before transfer const expectedInitialBalances = [spenderInitialFungibleBalance, receiverInitialFungibleBalance]; await erc1155Wrapper.assertBalancesAsync(tokenHolders, tokensToTransfer, expectedInitialBalances); - // execute transfer - await expectTransactionFailedAsync( - erc1155ProxyWrapper.transferFromAsync( - spender, - receiver, - erc1155Contract.address, - tokensToTransfer, - valuesToTransfer, - valueMultiplier, - receiverCallbackData, - authorized, - ), - RevertReason.Uint256Underflow, + const expectedError = new SafeMathRevertErrors.Uint256UnderflowError( + spenderInitialFungibleBalance, + valueGreaterThanSpenderBalance, ); + // execute transfer + const tx = erc1155ProxyWrapper.transferFromAsync( + spender, + receiver, + erc1155Contract.address, + tokensToTransfer, + valuesToTransfer, + valueMultiplier, + receiverCallbackData, + authorized, + ); + expect(tx).to.revertWith(expectedError); }); it('should revert if sender allowance is insufficient', async () => { // dremove allowance for ERC1155 proxy diff --git a/contracts/exchange/test/internal.ts b/contracts/exchange/test/internal.ts index 8183bd6e69..9c4d964f03 100644 --- a/contracts/exchange/test/internal.ts +++ b/contracts/exchange/test/internal.ts @@ -54,7 +54,7 @@ const emptySignedOrder: SignedOrder = { const overflowErrorForCall = ( a?: BigNumber | string | number, b?: BigNumber | string | number, -) => new SafeMathRevertErrors.Uint256OverflowError(a, b); +) => new SafeMathRevertErrors.Uint256OverflowError(); describe('Exchange core internal functions', () => { let chainId: number;