diff options
author | Benjamin Peterson <benjamin@python.org> | 2009-04-18 20:54:08 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2009-04-18 20:54:08 (GMT) |
commit | ae937c021dfd3a2898c85212782457740c7ab6ab (patch) | |
tree | 6a081251f0deaa68818924a8e5f9069a1c55cbaa /Lib/test | |
parent | 332424777f4bf213b1db1b7dcfa592d2fe5ae772 (diff) | |
download | cpython-ae937c021dfd3a2898c85212782457740c7ab6ab.zip cpython-ae937c021dfd3a2898c85212782457740c7ab6ab.tar.gz cpython-ae937c021dfd3a2898c85212782457740c7ab6ab.tar.bz2 |
Merged revisions 71722 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r71722 | benjamin.peterson | 2009-04-18 15:12:47 -0500 (Sat, 18 Apr 2009) | 1 line
try to initalize all builtin types with PyType_Ready to avoid problems like #5787
........
Diffstat (limited to 'Lib/test')
-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 6dba040..407959d 100644 --- a/Lib/test/test_descr.py +++ b/Lib/test/test_descr.py @@ -1,3 +1,4 @@ +import builtins import types import unittest import warnings @@ -3586,6 +3587,17 @@ order (MRO) for bases """ else: self.fail("shouldn't be able to create inheritance cycles") + 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 builtins.__dict__.values() + 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): |