Merge pull request #190 from vpelletier/master

Improve mutlipleOf validator with floating point value.
This commit is contained in:
Julian Berman 2015-01-04 13:01:54 -05:00
commit e1c30237cf
1 changed files with 2 additions and 5 deletions

View File

@ -5,9 +5,6 @@ from jsonschema.exceptions import FormatError, ValidationError
from jsonschema.compat import iteritems
FLOAT_TOLERANCE = 10 ** -15
def patternProperties(validator, patternProperties, instance, schema):
if not validator.is_type(instance, "object"):
return
@ -111,8 +108,8 @@ def multipleOf(validator, dB, instance, schema):
return
if isinstance(dB, float):
mod = instance % dB
failed = (mod > FLOAT_TOLERANCE) and (dB - mod) > FLOAT_TOLERANCE
quotient = instance / dB
failed = int(quotient) != quotient
else:
failed = instance % dB