aboutsummaryrefslogtreecommitdiffstats
path: root/packages/contract-wrappers/src/utils/assert.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/contract-wrappers/src/utils/assert.ts')
-rw-r--r--packages/contract-wrappers/src/utils/assert.ts26
1 files changed, 17 insertions, 9 deletions
diff --git a/packages/contract-wrappers/src/utils/assert.ts b/packages/contract-wrappers/src/utils/assert.ts
index 140979e7e..da6697b08 100644
--- a/packages/contract-wrappers/src/utils/assert.ts
+++ b/packages/contract-wrappers/src/utils/assert.ts
@@ -1,20 +1,28 @@
import { assert as sharedAssert } from '@0xproject/assert';
// We need those two unused imports because they're actually used by sharedAssert which gets injected here
-// tslint:disable:no-unused-variable
-import { Schema } from '@0xproject/json-schemas';
-import { ECSignature } from '@0xproject/types';
-import { BigNumber } from '@0xproject/utils';
+import { Schema } from '@0xproject/json-schemas'; // tslint:disable-line:no-unused-variable
+import { isValidSignatureAsync } from '@0xproject/order-utils';
+import { ECSignature } from '@0xproject/types'; // tslint:disable-line:no-unused-variable
+import { BigNumber } from '@0xproject/utils'; // tslint:disable-line:no-unused-variable
import { Web3Wrapper } from '@0xproject/web3-wrapper';
-// tslint:enable:no-unused-variable
-
-import { isValidSignature } from '@0xproject/order-utils';
+import { Provider } from 'ethereum-types';
export const assert = {
...sharedAssert,
- isValidSignature(orderHash: string, ecSignature: ECSignature, signerAddress: string): void {
- const isValid = isValidSignature(orderHash, ecSignature, signerAddress);
+ async isValidSignatureAsync(
+ provider: Provider,
+ orderHash: string,
+ signature: string,
+ signerAddress: string,
+ ): Promise<void> {
+ const isValid = await isValidSignatureAsync(provider, orderHash, signature, signerAddress);
this.assert(isValid, `Expected order with hash '${orderHash}' to have a valid signature`);
},
+ isValidSubscriptionToken(variableName: string, subscriptionToken: string): void {
+ const uuidRegex = new RegExp('^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$');
+ const isValid = uuidRegex.test(subscriptionToken);
+ this.assert(isValid, `Expected ${variableName} to be a valid subscription token`);
+ },
async isSenderAddressAsync(
variableName: string,
senderAddressHex: string,