Don't floatify the instance in minimum/maximum messages.
This commit is contained in:
@@ -76,12 +76,11 @@ def minimum(validator, minimum, instance, schema):
|
|||||||
if not validator.is_type(instance, "number"):
|
if not validator.is_type(instance, "number"):
|
||||||
return
|
return
|
||||||
|
|
||||||
instance = float(instance)
|
|
||||||
if schema.get("exclusiveMinimum", False):
|
if schema.get("exclusiveMinimum", False):
|
||||||
failed = instance <= minimum
|
failed = float(instance) <= minimum
|
||||||
cmp = "less than or equal to"
|
cmp = "less than or equal to"
|
||||||
else:
|
else:
|
||||||
failed = instance < minimum
|
failed = float(instance) < minimum
|
||||||
cmp = "less than"
|
cmp = "less than"
|
||||||
|
|
||||||
if failed:
|
if failed:
|
||||||
@@ -94,12 +93,11 @@ def maximum(validator, maximum, instance, schema):
|
|||||||
if not validator.is_type(instance, "number"):
|
if not validator.is_type(instance, "number"):
|
||||||
return
|
return
|
||||||
|
|
||||||
instance = float(instance)
|
|
||||||
if schema.get("exclusiveMaximum", False):
|
if schema.get("exclusiveMaximum", False):
|
||||||
failed = instance >= maximum
|
failed = float(instance) >= maximum
|
||||||
cmp = "greater than or equal to"
|
cmp = "greater than or equal to"
|
||||||
else:
|
else:
|
||||||
failed = instance > maximum
|
failed = float(instance) > maximum
|
||||||
cmp = "greater than"
|
cmp = "greater than"
|
||||||
|
|
||||||
if failed:
|
if failed:
|
||||||
|
@@ -141,6 +141,14 @@ class TestValidationErrorMessages(unittest.TestCase):
|
|||||||
message = self.message_for(instance=1, schema=schema)
|
message = self.message_for(instance=1, schema=schema)
|
||||||
self.assertEqual(message, "1 is not of type %r" % (name,))
|
self.assertEqual(message, "1 is not of type %r" % (name,))
|
||||||
|
|
||||||
|
def test_minimum(self):
|
||||||
|
message = self.message_for(instance=1, schema={"minimum" : 2})
|
||||||
|
self.assertEqual(message, "1 is less than the minimum of 2")
|
||||||
|
|
||||||
|
def test_maximum(self):
|
||||||
|
message = self.message_for(instance=1, schema={"maximum" : 0})
|
||||||
|
self.assertEqual(message, "1 is greater than the maximum of 0")
|
||||||
|
|
||||||
def test_dependencies_failure_has_single_element_not_list(self):
|
def test_dependencies_failure_has_single_element_not_list(self):
|
||||||
depend, on = "bar", "foo"
|
depend, on = "bar", "foo"
|
||||||
schema = {u"dependencies" : {depend : on}}
|
schema = {u"dependencies" : {depend : on}}
|
||||||
|
Reference in New Issue
Block a user