Skip to content

Commit ff8ae76

Browse files
authored
Merge pull request #2279 from vz10/remove-max-allowed
Remove max_allowed value from ValidationError error message
2 parents 75f539a + 22481bf commit ff8ae76

File tree

3 files changed

+18
-17
lines changed

3 files changed

+18
-17
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "bugfix",
3+
"category": "Validator",
4+
"description": "Fix showing incorrect max-value in error message for range and length value validation"
5+
}

botocore/validate.py

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@ def _type_check(param, errors, name):
7070
def range_check(name, value, shape, error_type, errors):
7171
failed = False
7272
min_allowed = float('-inf')
73-
max_allowed = float('inf')
7473
if 'min' in shape.metadata:
7574
min_allowed = shape.metadata['min']
7675
if value < min_allowed:
@@ -82,8 +81,7 @@ def range_check(name, value, shape, error_type, errors):
8281
if value < min_allowed:
8382
failed = True
8483
if failed:
85-
errors.report(name, error_type, param=value,
86-
valid_range=[min_allowed, max_allowed])
84+
errors.report(name, error_type, param=value, min_allowed=min_allowed)
8785

8886

8987
class ValidationErrors(object):
@@ -117,17 +115,15 @@ def _format_error(self, error):
117115
str(type(additional['param'])),
118116
', '.join(additional['valid_types']))
119117
elif error_type == 'invalid range':
120-
min_allowed = additional['valid_range'][0]
121-
max_allowed = additional['valid_range'][1]
122-
return ('Invalid range for parameter %s, value: %s, valid range: '
123-
'%s-%s' % (name, additional['param'],
124-
min_allowed, max_allowed))
118+
min_allowed = additional['min_allowed']
119+
return ('Invalid value for parameter %s, value: %s, '
120+
'valid min value: %s' % (name, additional['param'],
121+
min_allowed))
125122
elif error_type == 'invalid length':
126-
min_allowed = additional['valid_range'][0]
127-
max_allowed = additional['valid_range'][1]
128-
return ('Invalid length for parameter %s, value: %s, valid range: '
129-
'%s-%s' % (name, additional['param'],
130-
min_allowed, max_allowed))
123+
min_allowed = additional['min_allowed']
124+
return ('Invalid length for parameter %s, value: %s, '
125+
'valid min length: %s' % (name, additional['param'],
126+
min_allowed))
131127
elif error_type == 'unable to encode to json':
132128
return 'Invalid parameter %s must be json serializable: %s' \
133129
% (name, additional['type_error'])

tests/unit/test_validate.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -278,8 +278,8 @@ def test_less_than_range(self):
278278
'Long': -10,
279279
},
280280
errors=[
281-
'Invalid range for parameter Int',
282-
'Invalid range for parameter Long',
281+
'Invalid value for parameter Int',
282+
'Invalid value for parameter Long',
283283
]
284284
)
285285

@@ -423,7 +423,7 @@ def test_range_float(self):
423423
'Float': 1,
424424
},
425425
errors=[
426-
'Invalid range for parameter Float',
426+
'Invalid value for parameter Float',
427427
]
428428
)
429429

@@ -441,7 +441,7 @@ def test_decimal_still_validates_range(self):
441441
'Float': decimal.Decimal('1'),
442442
},
443443
errors=[
444-
'Invalid range for parameter Float',
444+
'Invalid value for parameter Float',
445445
]
446446
)
447447

0 commit comments

Comments
 (0)