aboutsummaryrefslogtreecommitdiffstats
path: root/src/contract_wrappers
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2017-05-30 20:48:45 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2017-05-30 20:48:45 +0800
commit8c0d783ccc40d5430a5fdc8253968aa457f717bd (patch)
treecbe3d31d8209d67adf7e799093ff36f26841867c /src/contract_wrappers
parent18d65f5f55bcdbbb1e1058ac9e8fe193804b1a06 (diff)
downloaddexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar.gz
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar.bz2
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar.lz
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar.xz
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.tar.zst
dexon-sol-tools-8c0d783ccc40d5430a5fdc8253968aa457f717bd.zip
Add throwErrorLogsAsErrors
Diffstat (limited to 'src/contract_wrappers')
-rw-r--r--src/contract_wrappers/exchange_wrapper.ts16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/contract_wrappers/exchange_wrapper.ts b/src/contract_wrappers/exchange_wrapper.ts
index 141e9502a..7a80c5800 100644
--- a/src/contract_wrappers/exchange_wrapper.ts
+++ b/src/contract_wrappers/exchange_wrapper.ts
@@ -7,6 +7,7 @@ import {
OrderValues,
OrderAddresses,
SignedOrder,
+ ContractEvent,
} from '../types';
import {assert} from '../utils/assert';
import {ContractWrapper} from './contract_wrapper';
@@ -86,16 +87,19 @@ export class ExchangeWrapper extends ContractWrapper {
from: senderAddress,
},
);
- const errEvent = _.find(response.logs, {event: 'LogError'});
- if (!_.isUndefined(errEvent)) {
- const errCode = errEvent.args.errorId.toNumber();
- const humanReadableErrMessage = this.exchangeContractErrToMsg[errCode];
- throw new Error(humanReadableErrMessage);
- }
+ this.throwErrorLogsAsErrors(response.logs);
return response;
}
private async getExchangeInstanceOrThrowAsync(): Promise<ExchangeContract> {
const contractInstance = await this.instantiateContractIfExistsAsync((ExchangeArtifacts as any));
return contractInstance as ExchangeContract;
}
+ private throwErrorLogsAsErrors(logs: ContractEvent[]): void {
+ const errEvent = _.find(logs, {event: 'LogError'});
+ if (!_.isUndefined(errEvent)) {
+ const errCode = errEvent.args.errorId.toNumber();
+ const humanReadableErrMessage = this.exchangeContractErrToMsg[errCode];
+ throw new Error(humanReadableErrMessage);
+ }
+ }
}