Skip to content

Commit

Permalink
grass.pygrass: Fix parameter range error reporting
Browse files Browse the repository at this point in the history
  • Loading branch information
wenzeslaus committed Feb 9, 2023
1 parent d3541e0 commit d7c4e52
Showing 1 changed file with 16 additions and 5 deletions.
21 changes: 16 additions & 5 deletions python/grass/pygrass/modules/interface/parameter.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,11 +98,22 @@ def check_string(value):
if (param.min is not None and newvalue < param.min) or (
param.max is not None and newvalue > param.max
):
err_str = (
"The Parameter <%s>, must be between: "
"%g<=value<=%g, %r is outside."
)
raise ValueError(err_str % (param.name, param.min, param.max, newvalue))
if param.min is None:
err_str = (
"The Parameter <%s>, must be lower than "
"%g, %r is outside." % (param.name, param.max, newvalue)
)
elif param.max is None:
err_str = (
"The Parameter <%s>, must be higher than "
"%g, %r is out of range." % (param.name, param.min, newvalue)
)
else:
err_str = (
"The Parameter <%s>, must be between: "
"%g<=value<=%g, %r is outside." % (param.name, param.min, param.max, newvalue)
)
raise ValueError(err_str)
# check if value is in the list of valid values
if param.values is not None and newvalue not in param.values:
raise ValueError(must_val % (param.name, param.values))
Expand Down

0 comments on commit d7c4e52

Please sign in to comment.