remove unjustified open_values parameters in ChoiceOption
This commit is contained in:
@ -41,7 +41,7 @@ class ChoiceOption(Option):
|
||||
def __init__(self, name, doc, values, default=None,
|
||||
values_params=None, default_multi=None, requires=None,
|
||||
multi=False, callback=None, callback_params=None,
|
||||
open_values=False, validator=None, validator_params=None,
|
||||
validator=None, validator_params=None,
|
||||
properties=None, warnings_only=False):
|
||||
"""
|
||||
:param values: is a list of values the option can possibly take
|
||||
@ -51,11 +51,7 @@ class ChoiceOption(Option):
|
||||
elif not isinstance(values, tuple):
|
||||
raise TypeError(_('values must be a tuple or a function for {0}'
|
||||
).format(name))
|
||||
if open_values not in (True, False):
|
||||
raise TypeError(_('open_values must be a boolean for '
|
||||
'{0}').format(name))
|
||||
self._extra = {'_choice_open_values': open_values,
|
||||
'_choice_values': values,
|
||||
self._extra = {'_choice_values': values,
|
||||
'_choice_values_params': values_params}
|
||||
super(ChoiceOption, self).__init__(name, doc, default=default,
|
||||
default_multi=default_multi,
|
||||
@ -83,14 +79,10 @@ class ChoiceOption(Option):
|
||||
'').format(self.impl_getname()))
|
||||
return values
|
||||
|
||||
def impl_is_openvalues(self):
|
||||
return self._extra['_choice_open_values']
|
||||
|
||||
def _validate(self, value, context=None):
|
||||
try:
|
||||
values = self.impl_get_values(context)
|
||||
if not self.impl_is_openvalues() and \
|
||||
not value in values:
|
||||
if not value in values:
|
||||
raise ValueError(_('value {0} is not permitted, '
|
||||
'only {1} is allowed'
|
||||
'').format(value,
|
||||
|
Reference in New Issue
Block a user