diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-08-29 04:29:29 +0000 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-08-29 04:29:29 +0000 |
commit | 03daa91d1c9c355f5f964095371c81d73fb9e08a (patch) | |
tree | 27af14d486bd67d828c8877c0e48a5c1ec2103c9 | |
parent | 8dc0e263dac8bf4074e48fcca593a00cadec03e0 (diff) | |
download | freeipa-03daa91d1c9c355f5f964095371c81d73fb9e08a.tar.gz freeipa-03daa91d1c9c355f5f964095371c81d73fb9e08a.tar.xz freeipa-03daa91d1c9c355f5f964095371c81d73fb9e08a.zip |
222: Fixed broken assertion in IPATypeError; did more work on docstrings in same
-rw-r--r-- | ipalib/errors.py | 8 | ||||
-rw-r--r-- | ipalib/tests/test_errors.py | 19 |
2 files changed, 18 insertions, 9 deletions
diff --git a/ipalib/errors.py b/ipalib/errors.py index 70128f7c..52225373 100644 --- a/ipalib/errors.py +++ b/ipalib/errors.py @@ -24,18 +24,22 @@ All custom errors raised by `ipalib` package. class IPATypeError(TypeError): """ - TypeError subclass with standard message for easier debugging. + A TypeError subclass with with a standard message. Also has two custom attributes: ``type`` - The type being tested against. ``value`` - The offending value that caused the exception. + + There is no edict that all TypeError should be raised with IPATypeError, + but when it fits, use it... it makes the unit tests faster to write and + the debugging easier to read. """ format = 'need a %r; got %r' def __init__(self, type_, value): - assert type(value) is not type, 'no error: %r, %r' % (type_, value) + assert type(value) is not type_, '%r is a %r' % (value, type_) self.type = type_ self.value = value TypeError.__init__(self, self.format % (self.type, self.value)) diff --git a/ipalib/tests/test_errors.py b/ipalib/tests/test_errors.py index bca8d3a8..48b1b8fe 100644 --- a/ipalib/tests/test_errors.py +++ b/ipalib/tests/test_errors.py @@ -21,7 +21,7 @@ Unit tests for `ipalib.errors` module. """ -from tstutil import raises, getitem, no_set, no_del, read_only, ClassChecker +from tstutil import raises, ClassChecker from ipalib import errors @@ -38,9 +38,14 @@ class test_IPATypeError(ClassChecker): """ Tests the `errors.IPATypeError.__init__` method. """ - t = unicode - v = 'hello' - e = self.cls(t, v) - assert e.type is t - assert e.value is v - assert str(e) == 'need a %r; got %r' % (t, v) + type_ = unicode + okay = 'hello' + e = self.cls(type_, okay) + assert e.type is type_ + assert e.value is okay + assert str(e) == 'need a %r; got %r' % (type_, okay) + + # Check that AssertionError is raised when type(value) is type_: + fail = u'hello' + e = raises(AssertionError, self.cls, type_, fail) + assert str(e) == '%r is a %r' % (fail, type_) |