diff options
author | fragosti <francesco.agosti93@gmail.com> | 2018-08-10 06:57:12 +0800 |
---|---|---|
committer | fragosti <francesco.agosti93@gmail.com> | 2018-08-10 06:57:12 +0800 |
commit | 938a99f435ca01853ecb31f9267e2ba4b501d206 (patch) | |
tree | 6b1aea79d1130206f6f69b68e0747c87616f2fb6 /packages/contracts/test/utils/exchange_wrapper.ts | |
parent | b2c666bb1f2830211db208ba8398f2de799c8ee6 (diff) | |
parent | f97ec000e109341f7b200d0ff9ff324bf3f97d3e (diff) | |
download | dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar.gz dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar.bz2 dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar.lz dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar.xz dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.tar.zst dexon-sol-tools-938a99f435ca01853ecb31f9267e2ba4b501d206.zip |
Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/sra/add-sra-package
Diffstat (limited to 'packages/contracts/test/utils/exchange_wrapper.ts')
-rw-r--r-- | packages/contracts/test/utils/exchange_wrapper.ts | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/packages/contracts/test/utils/exchange_wrapper.ts b/packages/contracts/test/utils/exchange_wrapper.ts index 490ea959b..d57592d6d 100644 --- a/packages/contracts/test/utils/exchange_wrapper.ts +++ b/packages/contracts/test/utils/exchange_wrapper.ts @@ -8,7 +8,7 @@ import { ExchangeContract } from '../../generated_contract_wrappers/exchange'; import { formatters } from './formatters'; import { LogDecoder } from './log_decoder'; import { orderUtils } from './order_utils'; -import { OrderInfo, SignedTransaction } from './types'; +import { FillResults, OrderInfo, SignedTransaction } from './types'; export class ExchangeWrapper { private readonly _exchange: ExchangeContract; @@ -243,4 +243,27 @@ export class ExchangeWrapper { const tx = await this._logDecoder.getTxWithDecodedLogsAsync(txHash); return tx; } + public async getFillOrderResultsAsync( + signedOrder: SignedOrder, + from: string, + opts: { takerAssetFillAmount?: BigNumber } = {}, + ): Promise<FillResults> { + const params = orderUtils.createFill(signedOrder, opts.takerAssetFillAmount); + const fillResults = await this._exchange.fillOrder.callAsync( + params.order, + params.takerAssetFillAmount, + params.signature, + { from }, + ); + return fillResults; + } + public abiEncodeFillOrder(signedOrder: SignedOrder, opts: { takerAssetFillAmount?: BigNumber } = {}): string { + const params = orderUtils.createFill(signedOrder, opts.takerAssetFillAmount); + const data = this._exchange.fillOrder.getABIEncodedTransactionData( + params.order, + params.takerAssetFillAmount, + params.signature, + ); + return data; + } } |