mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
246: Added unit tests for errors.RuleError
This commit is contained in:
parent
62533bfb2b
commit
004e989dc4
@ -145,8 +145,9 @@ class RuleError(ValidationError):
|
||||
Raised when a value fails a validation rule.
|
||||
"""
|
||||
def __init__(self, name, value, error, rule, index=None):
|
||||
self.rule_name = rule.__name__
|
||||
ValidationError.__init__(self, name, value, error, index)
|
||||
assert callable(rule)
|
||||
self.rule = rule
|
||||
ValidationError.__init__(self, name, value, error, index=index)
|
||||
|
||||
|
||||
class RequirementError(ValidationError):
|
||||
@ -233,6 +234,5 @@ class MissingOverrideError(RegistrationError):
|
||||
return self.msg % (self.base.__name__, self.cls.__name__, self.cls)
|
||||
|
||||
|
||||
|
||||
class TwiceSetError(IPAError):
|
||||
msg = '%s.%s cannot be set twice'
|
||||
|
@ -223,3 +223,31 @@ class test_ConversionError(ClassChecker):
|
||||
type_.conversion_error)
|
||||
# Check that index default is None:
|
||||
assert self.cls(name, value, type_).index is None
|
||||
|
||||
|
||||
class test_RuleError(ClassChecker):
|
||||
"""
|
||||
Tests the `errors.RuleError` exception.
|
||||
"""
|
||||
_cls = errors.RuleError
|
||||
|
||||
def test_class(self):
|
||||
assert self.cls.__bases__ == (errors.ValidationError,)
|
||||
|
||||
def test_init(self):
|
||||
"""
|
||||
Tests the `errors.RuleError.__init__` method.
|
||||
"""
|
||||
name = 'whatever'
|
||||
value = 'The smallest weird number.'
|
||||
def my_rule(value):
|
||||
return 'Value is bad.'
|
||||
error = my_rule(value)
|
||||
for index in (None, 42):
|
||||
e = self.cls(name, value, error, my_rule, index=index)
|
||||
assert e.name is name
|
||||
assert e.value is value
|
||||
assert e.error is error
|
||||
assert e.rule is my_rule
|
||||
# Check that index default is None:
|
||||
assert self.cls(name, value, error, my_rule).index is None
|
||||
|
Loading…
Reference in New Issue
Block a user