summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/output/test_scope1
-rw-r--r--Lib/test/test_scope.py23
2 files changed, 24 insertions, 0 deletions
diff --git a/Lib/test/output/test_scope b/Lib/test/output/test_scope
index 5d41e8c..b00f9f5 100644
--- a/Lib/test/output/test_scope
+++ b/Lib/test/output/test_scope
@@ -14,3 +14,4 @@ test_scope
13. UnboundLocal
14. complex definitions
15. scope of global statements
+16. check leaks
diff --git a/Lib/test/test_scope.py b/Lib/test/test_scope.py
index 0633b14..4bd8ed7 100644
--- a/Lib/test/test_scope.py
+++ b/Lib/test/test_scope.py
@@ -383,3 +383,26 @@ def f():
return g()
verify(f() == 2)
verify(x == 2)
+
+print "16. check leaks"
+
+class Foo:
+ count = 0
+
+ def __init__(self):
+ Foo.count += 1
+
+ def __del__(self):
+ Foo.count -= 1
+
+def f1():
+ x = Foo()
+ def f2():
+ return x
+ f2()
+
+for i in range(100):
+ f1()
+
+verify(Foo.count == 0)
+