raise a clear TypeError when trying to register a non-class

This commit is contained in:
Benjamin Peterson 2010-01-27 02:16:42 +00:00
parent 17527bedad
commit 2deb5c758a
3 changed files with 9 additions and 1 deletions

View file

@ -149,6 +149,12 @@ class TestABC(unittest.TestCase):
self.assertRaises(RuntimeError, C.register, A) # cycles not allowed
C.register(B) # ok
def test_register_non_class(self):
class A(object):
__metaclass__ = abc.ABCMeta
self.assertRaisesRegexp(TypeError, "Can only register classes",
A.register, 4)
def test_registration_transitiveness(self):
class A:
__metaclass__ = abc.ABCMeta