summaryrefslogtreecommitdiffstats
path: root/ipalib/public.py
diff options
context:
space:
mode:
authorJason Gerard DeRose <jderose@redhat.com>2008-08-28 20:30:08 +0000
committerJason Gerard DeRose <jderose@redhat.com>2008-08-28 20:30:08 +0000
commit992a5dadbea27b21075617daf4216396d18404de (patch)
treecc0c1c0d16d34ba10302ab4942f5a0efc7c11f9f /ipalib/public.py
parenta6ec94da601273719e44c69c4d7c23776ab30f3a (diff)
downloadfreeipa.git-992a5dadbea27b21075617daf4216396d18404de.tar.gz
freeipa.git-992a5dadbea27b21075617daf4216396d18404de.tar.xz
freeipa.git-992a5dadbea27b21075617daf4216396d18404de.zip
218: Finished unit tests for Option2.validate(), Option2.validate_scalar()
Diffstat (limited to 'ipalib/public.py')
-rw-r--r--ipalib/public.py16
1 files changed, 7 insertions, 9 deletions
diff --git a/ipalib/public.py b/ipalib/public.py
index 4c2a8dd2..e0d9e6d2 100644
--- a/ipalib/public.py
+++ b/ipalib/public.py
@@ -88,6 +88,7 @@ class Option2(plugable.ReadOnly):
def __init__(self, name, doc, type_, required=False, multivalue=False,
default=None, default_from=None, normalize=None, rules=tuple()
):
+
self.name = name
self.doc = doc
self.type = type_
@@ -101,19 +102,16 @@ class Option2(plugable.ReadOnly):
def validate_scalar(self, value):
for rule in self.rules:
- msg = rule(value)
- if msg is not None:
- raise errors.RuleError(
- self.__class__.__name__,
- value,
- rule,
- msg,
- )
+ error = rule(value)
+ if error is not None:
+ raise errors.RuleError(self.name, value, rule, error)
def validate(self, value):
if self.multivalue:
if type(value) is not tuple:
- value = (value,)
+ raise TypeError(
+ 'when multivalue, value must be tuple; got %r' % value
+ )
for v in value:
self.validate_scalar(v)
else: