summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipalib/errors.py7
-rw-r--r--ipalib/tests/test_errors.py21
2 files changed, 24 insertions, 4 deletions
diff --git a/ipalib/errors.py b/ipalib/errors.py
index 9f40ddae1..fc1b2c499 100644
--- a/ipalib/errors.py
+++ b/ipalib/errors.py
@@ -19,6 +19,8 @@
"""
All custom errors raised by `ipalib` package.
+
+Also includes a few utility functions for raising exceptions.
"""
TYPE_FORMAT = '%s: need a %r; got %r'
@@ -155,16 +157,13 @@ class RequirementError(ValidationError):
Raised when a required option was not provided.
"""
def __init__(self, name):
- ValidationError.__init__(self, name, None,
- 'missing required value'
- )
+ ValidationError.__init__(self, name, None, 'Required')
class SetError(IPAError):
msg = 'setting %r, but NameSpace does not allow attribute setting'
-
class RegistrationError(IPAError):
"""
Base class for errors that occur during plugin registration.
diff --git a/ipalib/tests/test_errors.py b/ipalib/tests/test_errors.py
index b1552562c..7d2df4dfe 100644
--- a/ipalib/tests/test_errors.py
+++ b/ipalib/tests/test_errors.py
@@ -251,3 +251,24 @@ class test_RuleError(ClassChecker):
assert e.rule is my_rule
# Check that index default is None:
assert self.cls(name, value, error, my_rule).index is None
+
+
+class test_RequirementError(ClassChecker):
+ """
+ Tests the `errors.RequirementError` exception.
+ """
+ _cls = errors.RequirementError
+
+ def test_class(self):
+ assert self.cls.__bases__ == (errors.ValidationError,)
+
+ def test_init(self):
+ """
+ Tests the `errors.RequirementError.__init__` method.
+ """
+ name = 'givenname'
+ e = self.cls(name)
+ assert e.name is name
+ assert e.value is None
+ assert e.error == 'Required'
+ assert e.index is None