Cleanup tests

This commit is contained in:
Amir Bandeali 2019-06-03 18:04:26 -07:00
parent 62f0a867a8
commit c9ecef4fc3

View File

@ -130,16 +130,10 @@ describe('OrderValidationUtils', () => {
it('should return the balance when balance < allowance', async () => { it('should return the balance when balance < allowance', async () => {
const balance = new BigNumber(123); const balance = new BigNumber(123);
const allowance = new BigNumber(456); const allowance = new BigNumber(456);
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, balance);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, balance), await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, allowance, {
constants.AWAIT_TRANSACTION_MINED_MS, from: makerAddress,
); });
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, allowance, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const transferableAmount = await devUtils.getTransferableAssetAmount.callAsync( const transferableAmount = await devUtils.getTransferableAssetAmount.callAsync(
erc20AssetData, erc20AssetData,
makerAddress, makerAddress,
@ -149,16 +143,10 @@ describe('OrderValidationUtils', () => {
it('should return the allowance when allowance < balance', async () => { it('should return the allowance when allowance < balance', async () => {
const balance = new BigNumber(456); const balance = new BigNumber(456);
const allowance = new BigNumber(123); const allowance = new BigNumber(123);
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, balance);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, balance), await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, allowance, {
constants.AWAIT_TRANSACTION_MINED_MS, from: makerAddress,
); });
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, allowance, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const transferableAmount = await devUtils.getTransferableAssetAmount.callAsync( const transferableAmount = await devUtils.getTransferableAssetAmount.callAsync(
erc20AssetData, erc20AssetData,
makerAddress, makerAddress,
@ -199,16 +187,10 @@ describe('OrderValidationUtils', () => {
expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT); expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT);
}); });
it('should return a fillableTakerAssetAmount of 0 when fee balances/allowances are insufficient', async () => { it('should return a fillableTakerAssetAmount of 0 when fee balances/allowances are insufficient', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount), await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
constants.AWAIT_TRANSACTION_MINED_MS, from: makerAddress,
); });
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -216,30 +198,21 @@ describe('OrderValidationUtils', () => {
expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT); expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT);
}); });
it('should return the correct fillableTakerAssetAmount when fee balances/allowances are partially sufficient', async () => { it('should return the correct fillableTakerAssetAmount when fee balances/allowances are partially sufficient', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount),
constants.AWAIT_TRANSACTION_MINED_MS, await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const divisor = 4; const divisor = 4;
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.setBalance.sendTransactionAsync( await zrxToken.setBalance.awaitTransactionSuccessAsync(
makerAddress, makerAddress,
signedOrder.makerFee.dividedToIntegerBy(divisor), signedOrder.makerFee.dividedToIntegerBy(divisor),
),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
); );
await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
});
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -250,29 +223,21 @@ describe('OrderValidationUtils', () => {
}); });
it('should return the correct fillableTakerAssetAmount when non-fee balances/allowances are partially sufficient', async () => { it('should return the correct fillableTakerAssetAmount when non-fee balances/allowances are partially sufficient', async () => {
const divisor = 4; const divisor = 4;
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.setBalance.sendTransactionAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(
makerAddress, makerAddress,
signedOrder.makerAssetAmount.dividedToIntegerBy(divisor), signedOrder.makerAssetAmount.dividedToIntegerBy(divisor),
),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerFee),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
); );
await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress,
});
await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerFee);
await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
});
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -282,16 +247,11 @@ describe('OrderValidationUtils', () => {
); );
}); });
it('should return a fillableTakerAssetAmount of 0 when non-fee balances/allowances are insufficient', async () => { it('should return a fillableTakerAssetAmount of 0 when non-fee balances/allowances are insufficient', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerFee);
await zrxToken.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerFee),
constants.AWAIT_TRANSACTION_MINED_MS, await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -299,26 +259,17 @@ describe('OrderValidationUtils', () => {
expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT); expect(fillableTakerAssetAmount).to.bignumber.equal(constants.ZERO_AMOUNT);
}); });
it('should return a fillableTakerAssetAmount equal to the takerAssetAmount when the order is unfilled and balances/allowances are sufficient', async () => { it('should return a fillableTakerAssetAmount equal to the takerAssetAmount when the order is unfilled and balances/allowances are sufficient', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount),
constants.AWAIT_TRANSACTION_MINED_MS, await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress, await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerFee);
}),
constants.AWAIT_TRANSACTION_MINED_MS, await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await zrxToken.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerFee),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -333,16 +284,12 @@ describe('OrderValidationUtils', () => {
makerFee: new BigNumber(40), makerFee: new BigNumber(40),
}); });
const transferableMakerAssetAmount = new BigNumber(10); const transferableMakerAssetAmount = new BigNumber(10);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.setBalance.sendTransactionAsync(makerAddress, transferableMakerAssetAmount), await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, transferableMakerAssetAmount);
constants.AWAIT_TRANSACTION_MINED_MS,
); await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, transferableMakerAssetAmount, {
await web3Wrapper.awaitTransactionSuccessAsync( from: makerAddress,
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, transferableMakerAssetAmount, { });
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const expectedFillableTakerAssetAmount = transferableMakerAssetAmount const expectedFillableTakerAssetAmount = transferableMakerAssetAmount
.times(signedOrder.takerAssetAmount) .times(signedOrder.takerAssetAmount)
.dividedToIntegerBy(signedOrder.makerAssetAmount.plus(signedOrder.makerFee)); .dividedToIntegerBy(signedOrder.makerAssetAmount.plus(signedOrder.makerFee));
@ -354,16 +301,12 @@ describe('OrderValidationUtils', () => {
}); });
it('should return the correct fillabeTakerassetAmount when makerAsset balances/allowances are sufficient and there are no maker fees', async () => { it('should return the correct fillabeTakerassetAmount when makerAsset balances/allowances are sufficient and there are no maker fees', async () => {
signedOrder = await orderFactory.newSignedOrderAsync({ makerFee: constants.ZERO_AMOUNT }); signedOrder = await orderFactory.newSignedOrderAsync({ makerFee: constants.ZERO_AMOUNT });
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount), await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
constants.AWAIT_TRANSACTION_MINED_MS,
); await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
await web3Wrapper.awaitTransactionSuccessAsync( from: makerAddress,
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, { });
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync( const [, fillableTakerAssetAmount] = await devUtils.getOrderRelevantState.callAsync(
signedOrder, signedOrder,
signedOrder.signature, signedOrder.signature,
@ -371,46 +314,29 @@ describe('OrderValidationUtils', () => {
expect(fillableTakerAssetAmount).to.bignumber.equal(signedOrder.takerAssetAmount); expect(fillableTakerAssetAmount).to.bignumber.equal(signedOrder.takerAssetAmount);
}); });
it('should return a fillableTakerAssetAmount when the remaining takerAssetAmount is less than the transferable amount', async () => { it('should return a fillableTakerAssetAmount when the remaining takerAssetAmount is less than the transferable amount', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount),
constants.AWAIT_TRANSACTION_MINED_MS, await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress, await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerFee);
}),
constants.AWAIT_TRANSACTION_MINED_MS, await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await zrxToken.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerFee),
constants.AWAIT_TRANSACTION_MINED_MS, await erc20Token2.setBalance.awaitTransactionSuccessAsync(takerAddress, signedOrder.takerAssetAmount);
);
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token2.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.takerAssetAmount, {
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, { from: takerAddress,
from: makerAddress, });
}),
constants.AWAIT_TRANSACTION_MINED_MS, await zrxToken.setBalance.awaitTransactionSuccessAsync(takerAddress, signedOrder.takerFee);
);
await web3Wrapper.awaitTransactionSuccessAsync( await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.takerFee, {
await erc20Token2.setBalance.sendTransactionAsync(takerAddress, signedOrder.takerAssetAmount), from: takerAddress,
constants.AWAIT_TRANSACTION_MINED_MS, });
);
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Token2.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.takerAssetAmount, {
from: takerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.setBalance.sendTransactionAsync(takerAddress, signedOrder.takerFee),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.takerFee, {
from: takerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const takerAssetFillAmount = signedOrder.takerAssetAmount.dividedToIntegerBy(4); const takerAssetFillAmount = signedOrder.takerAssetAmount.dividedToIntegerBy(4);
await exchange.fillOrder.awaitTransactionSuccessAsync( await exchange.fillOrder.awaitTransactionSuccessAsync(
signedOrder, signedOrder,
@ -429,26 +355,17 @@ describe('OrderValidationUtils', () => {
}); });
describe('getOrderRelevantStates', async () => { describe('getOrderRelevantStates', async () => {
it('should return the correct information for multiple orders', async () => { it('should return the correct information for multiple orders', async () => {
await web3Wrapper.awaitTransactionSuccessAsync( await erc20Token.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerAssetAmount);
await erc20Token.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerAssetAmount),
constants.AWAIT_TRANSACTION_MINED_MS, await erc20Token.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await erc20Token.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerAssetAmount, {
from: makerAddress, await zrxToken.setBalance.awaitTransactionSuccessAsync(makerAddress, signedOrder.makerFee);
}),
constants.AWAIT_TRANSACTION_MINED_MS, await zrxToken.approve.awaitTransactionSuccessAsync(erc20Proxy.address, signedOrder.makerFee, {
); from: makerAddress,
await web3Wrapper.awaitTransactionSuccessAsync( });
await zrxToken.setBalance.sendTransactionAsync(makerAddress, signedOrder.makerFee),
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await zrxToken.approve.sendTransactionAsync(erc20Proxy.address, signedOrder.makerFee, {
from: makerAddress,
}),
constants.AWAIT_TRANSACTION_MINED_MS,
);
const signedOrder2 = await orderFactory.newSignedOrderAsync({ makerAssetData: erc721AssetData }); const signedOrder2 = await orderFactory.newSignedOrderAsync({ makerAssetData: erc721AssetData });
const invalidSignature = '0x01'; const invalidSignature = '0x01';
await exchange.cancelOrder.awaitTransactionSuccessAsync(signedOrder2, { from: makerAddress }); await exchange.cancelOrder.awaitTransactionSuccessAsync(signedOrder2, { from: makerAddress });