]> granicus.if.org Git - python/commitdiff
Test GC of frame objects.
authorNeil Schemenauer <nascheme@enme.ucalgary.ca>
Thu, 12 Jul 2001 13:25:53 +0000 (13:25 +0000)
committerNeil Schemenauer <nascheme@enme.ucalgary.ca>
Thu, 12 Jul 2001 13:25:53 +0000 (13:25 +0000)
Lib/test/test_gc.py

index 1c008bee00d8341b0384fba14c0697628130bb66..cc74374851e6a097cdfda9b4b8059529b36a709d 100644 (file)
@@ -1,4 +1,5 @@
 from test_support import verify, verbose, TestFailed
+import sys
 import gc
 
 def run_test(name, thunk):
@@ -107,6 +108,15 @@ def test_function():
     if gc.collect() != 2:
         raise TestFailed
 
+def test_frame():
+    def f():
+        frame = sys._getframe()
+    gc.collect()
+    f()
+    if gc.collect() != 1:
+        raise TestFailed
+
+
 def test_saveall():
     # Verify that cyclic garbage like lists show up in gc.garbage if the
     # SAVEALL option is enabled.
@@ -152,6 +162,7 @@ def test_all():
     run_test("instances", test_instance)
     run_test("methods", test_method)
     run_test("functions", test_function)
+    run_test("frames", test_frame)
     run_test("finalizers", test_finalizer)
     run_test("__del__", test_del)
     run_test("saveall", test_saveall)