diff options
Diffstat (limited to 'Lib')
| -rw-r--r-- | Lib/test/test_descr.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py index aa5bde4..b5c767c 100644 --- a/Lib/test/test_descr.py +++ b/Lib/test/test_descr.py @@ -1,3 +1,4 @@ +import __builtin__ import types import unittest import warnings @@ -3895,6 +3896,17 @@ order (MRO) for bases """ else: self.fail("new-style class must have a new-style base") + def test_builtin_bases(self): + # Make sure all the builtin types can have their base queried without + # segfaulting. See issue #5787. + builtin_types = [tp for tp in __builtin__.__dict__.itervalues() + if isinstance(tp, type)] + for tp in builtin_types: + object.__getattribute__(tp, "__bases__") + if tp is not object: + self.assertEqual(len(tp.__bases__), 1, tp) + + def test_mutable_bases_with_failing_mro(self): # Testing mutable bases with failing mro... class WorkOnce(type): |
