summaryrefslogtreecommitdiffstats
path: root/ipalib/public.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipalib/public.py')
-rw-r--r--ipalib/public.py14
1 files changed, 6 insertions, 8 deletions
diff --git a/ipalib/public.py b/ipalib/public.py
index 915a1890..91f357ca 100644
--- a/ipalib/public.py
+++ b/ipalib/public.py
@@ -144,18 +144,16 @@ class Option(plugable.ReadOnly):
for rule in self.rules:
error = rule(value)
if error is not None:
- raise errors.RuleError(self.name, value, error, rule)
+ raise errors.RuleError(
+ self.name, value, error, rule, index=index
+ )
def validate(self, value):
- if value is None and self.required:
- raise errors.RequirementError(self.name)
- else:
- return
if self.multivalue:
if type(value) is not tuple:
- raise TypeError('multivalue must be a tuple; got %r' % value)
- for v in value:
- self.__validate_scalar(v)
+ raise_TypeError(value, tuple, 'value')
+ for (i, v) in enumerate(value):
+ self.__validate_scalar(v, i)
else:
self.__validate_scalar(value)