Lowercase schema names
This commit is contained in:
parent
43082b576c
commit
46fb1914cf
@ -11,7 +11,7 @@ import {assert} from './utils/assert';
|
|||||||
import findVersions = require('find-versions');
|
import findVersions = require('find-versions');
|
||||||
import compareVersions = require('compare-versions');
|
import compareVersions = require('compare-versions');
|
||||||
import {ExchangeWrapper} from './contract_wrappers/exchange_wrapper';
|
import {ExchangeWrapper} from './contract_wrappers/exchange_wrapper';
|
||||||
import {ECSignatureSchema} from './schemas/ec_signature_schema';
|
import {ecSignatureSchema} from './schemas/ec_signature_schema';
|
||||||
import {SolidityTypes, ECSignature, ZeroExError} from './types';
|
import {SolidityTypes, ECSignature, ZeroExError} from './types';
|
||||||
|
|
||||||
const MAX_DIGITS_IN_UNSIGNED_256_INT = 78;
|
const MAX_DIGITS_IN_UNSIGNED_256_INT = 78;
|
||||||
@ -67,7 +67,7 @@ export class ZeroEx {
|
|||||||
*/
|
*/
|
||||||
public static isValidSignature(dataHex: string, signature: ECSignature, signerAddressHex: string): boolean {
|
public static isValidSignature(dataHex: string, signature: ECSignature, signerAddressHex: string): boolean {
|
||||||
assert.isHexString('dataHex', dataHex);
|
assert.isHexString('dataHex', dataHex);
|
||||||
assert.doesConformToSchema('signature', signature, ECSignatureSchema);
|
assert.doesConformToSchema('signature', signature, ecSignatureSchema);
|
||||||
assert.isETHAddressHex('signerAddressHex', signerAddressHex);
|
assert.isETHAddressHex('signerAddressHex', signerAddressHex);
|
||||||
|
|
||||||
const dataBuff = ethUtil.toBuffer(dataHex);
|
const dataBuff = ethUtil.toBuffer(dataHex);
|
||||||
|
@ -4,7 +4,7 @@ import {ECSignature, ZeroExError, ExchangeContract} from '../types';
|
|||||||
import {assert} from '../utils/assert';
|
import {assert} from '../utils/assert';
|
||||||
import {ContractWrapper} from './contract_wrapper';
|
import {ContractWrapper} from './contract_wrapper';
|
||||||
import * as ExchangeArtifacts from '../artifacts/Exchange.json';
|
import * as ExchangeArtifacts from '../artifacts/Exchange.json';
|
||||||
import {ECSignatureSchema} from '../schemas/ec_signature_schema';
|
import {ecSignatureSchema} from '../schemas/ec_signature_schema';
|
||||||
|
|
||||||
export class ExchangeWrapper extends ContractWrapper {
|
export class ExchangeWrapper extends ContractWrapper {
|
||||||
constructor(web3Wrapper: Web3Wrapper) {
|
constructor(web3Wrapper: Web3Wrapper) {
|
||||||
@ -13,7 +13,7 @@ export class ExchangeWrapper extends ContractWrapper {
|
|||||||
public async isValidSignatureAsync(dataHex: string, ecSignature: ECSignature,
|
public async isValidSignatureAsync(dataHex: string, ecSignature: ECSignature,
|
||||||
signerAddressHex: string): Promise<boolean> {
|
signerAddressHex: string): Promise<boolean> {
|
||||||
assert.isHexString('dataHex', dataHex);
|
assert.isHexString('dataHex', dataHex);
|
||||||
assert.doesConformToSchema('ecSignature', ecSignature, ECSignatureSchema);
|
assert.doesConformToSchema('ecSignature', ecSignature, ecSignatureSchema);
|
||||||
assert.isETHAddressHex('signerAddressHex', signerAddressHex);
|
assert.isETHAddressHex('signerAddressHex', signerAddressHex);
|
||||||
|
|
||||||
const senderAddressIfExists = await this.web3Wrapper.getSenderAddressIfExistsAsync();
|
const senderAddressIfExists = await this.web3Wrapper.getSenderAddressIfExistsAsync();
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
export const ECSignatureParameter = {
|
export const ecSignatureParameter = {
|
||||||
id: '/ECSignatureParameter',
|
id: '/ecSignatureParameter',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
pattern: '^0[xX][0-9A-Fa-f]{64}$',
|
pattern: '^0[xX][0-9A-Fa-f]{64}$',
|
||||||
};
|
};
|
||||||
|
|
||||||
export const ECSignatureSchema = {
|
export const ecSignatureSchema = {
|
||||||
id: '/ECSignature',
|
id: '/ECSignature',
|
||||||
properties: {
|
properties: {
|
||||||
v: {
|
v: {
|
||||||
@ -12,8 +12,8 @@ export const ECSignatureSchema = {
|
|||||||
minimum: 27,
|
minimum: 27,
|
||||||
maximum: 28,
|
maximum: 28,
|
||||||
},
|
},
|
||||||
r: {$ref: '/ECSignatureParameter'},
|
r: {$ref: '/ecSignatureParameter'},
|
||||||
s: {$ref: '/ECSignatureParameter'},
|
s: {$ref: '/ecSignatureParameter'},
|
||||||
},
|
},
|
||||||
required: ['v', 'r', 's'],
|
required: ['v', 'r', 's'],
|
||||||
type: 'object',
|
type: 'object',
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
import {Validator, ValidatorResult} from 'jsonschema';
|
import {Validator, ValidatorResult} from 'jsonschema';
|
||||||
import {ECSignatureSchema, ECSignatureParameter} from '../schemas/ec_signature_schema';
|
import {ecSignatureSchema, ecSignatureParameter} from '../schemas/ec_signature_schema';
|
||||||
|
|
||||||
export class SchemaValidator {
|
export class SchemaValidator {
|
||||||
private validator: Validator;
|
private validator: Validator;
|
||||||
constructor() {
|
constructor() {
|
||||||
this.validator = new Validator();
|
this.validator = new Validator();
|
||||||
this.validator.addSchema(ECSignatureParameter, ECSignatureParameter.id);
|
this.validator.addSchema(ecSignatureParameter, ecSignatureParameter.id);
|
||||||
this.validator.addSchema(ECSignatureSchema, ECSignatureSchema.id);
|
this.validator.addSchema(ecSignatureSchema, ecSignatureSchema.id);
|
||||||
}
|
}
|
||||||
public validate(instance: object, schema: Schema): ValidatorResult {
|
public validate(instance: object, schema: Schema): ValidatorResult {
|
||||||
return this.validator.validate(instance, schema);
|
return this.validator.validate(instance, schema);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user