diff options
author | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-03-21 21:51:24 +0800 |
---|---|---|
committer | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-03-21 22:30:04 +0800 |
commit | 1dda8c146816a6b7fe1ab17a437a4349dece674c (patch) | |
tree | 33b95a07fb78332a065dd5b55fbd72aeb7f5e8dc /packages/0x.js/test | |
parent | 7d9c357409c25996f9c448dffd69007f69b9d8d6 (diff) | |
download | dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar.gz dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar.bz2 dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar.lz dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar.xz dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.tar.zst dexon-sol-tools-1dda8c146816a6b7fe1ab17a437a4349dece674c.zip |
Fix a bug causing fillOrdersUpTo validation to fail because of some extra orders being passed
Diffstat (limited to 'packages/0x.js/test')
-rw-r--r-- | packages/0x.js/test/exchange_wrapper_test.ts | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/packages/0x.js/test/exchange_wrapper_test.ts b/packages/0x.js/test/exchange_wrapper_test.ts index 0a4ea608d..cfc390bae 100644 --- a/packages/0x.js/test/exchange_wrapper_test.ts +++ b/packages/0x.js/test/exchange_wrapper_test.ts @@ -596,6 +596,19 @@ describe('ExchangeWrapper', () => { const remainingFillAmount = fillableAmount.minus(1); expect(anotherFilledAmount).to.be.bignumber.equal(remainingFillAmount); }); + it('should successfully fill up to specified amount and leave the rest of the orders untouched', async () => { + const txHash = await zeroEx.exchange.fillOrdersUpToAsync( + signedOrders, + fillableAmount, + shouldThrowOnInsufficientBalanceOrAllowance, + takerAddress, + ); + await zeroEx.awaitTransactionMinedAsync(txHash); + const filledAmount = await zeroEx.exchange.getFilledTakerAmountAsync(signedOrderHashHex); + const zeroAmount = await zeroEx.exchange.getFilledTakerAmountAsync(anotherOrderHashHex); + expect(filledAmount).to.be.bignumber.equal(fillableAmount); + expect(zeroAmount).to.be.bignumber.equal(0); + }); it('should successfully fill up to specified amount even if filling all orders would fail', async () => { const missingBalance = new BigNumber(1); // User will still have enough balance to fill up to 9, // but won't have 10 to fully fill all orders in a batch. |