NOTE: only ported the test for new-style classes.


Merged revisions 79535 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79535 | antoine.pitrou | 2010-03-31 23:32:15 +0200 (mer., 31 mars 2010) | 5 lines

  Issue #8268: Old-style classes (not just instances) now support weak
  references.
........
diff --git a/Lib/test/test_weakref.py b/Lib/test/test_weakref.py
index a909428..8b5bbc3 100644
--- a/Lib/test/test_weakref.py
+++ b/Lib/test/test_weakref.py
@@ -680,6 +680,18 @@
         # No exception should be raised here
         gc.collect()
 
+    def test_classes(self):
+        # Check that classes are weakrefable.
+        class A(object):
+            pass
+        l = []
+        weakref.ref(int)
+        a = weakref.ref(A, l.append)
+        A = None
+        gc.collect()
+        self.assertEqual(a(), None)
+        self.assertEqual(l, [a])
+
 
 class SubclassableWeakrefTestCase(TestBase):