]> granicus.if.org Git - python/commitdiff
Merged revisions 85589-85591 via svnmerge from
authorBenjamin Peterson <benjamin@python.org>
Sun, 17 Oct 2010 01:38:54 +0000 (01:38 +0000)
committerBenjamin Peterson <benjamin@python.org>
Sun, 17 Oct 2010 01:38:54 +0000 (01:38 +0000)
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r85589 | benjamin.peterson | 2010-10-16 20:25:19 -0500 (Sat, 16 Oct 2010) | 1 line

  remove rather pointless test
........
  r85590 | benjamin.peterson | 2010-10-16 20:29:11 -0500 (Sat, 16 Oct 2010) | 1 line

  disable the garbage collector while collecting traces, so that __del__s don't get caught
........
  r85591 | benjamin.peterson | 2010-10-16 20:30:26 -0500 (Sat, 16 Oct 2010) | 1 line

  use assertion methods
........

Lib/test/test_sys_setprofile.py

index 54267a07e92640960647dc3219f4acf93d96b7a9..9816e3ed6466b411cce23fc9f9056cbf34643e73 100644 (file)
@@ -1,3 +1,4 @@
+import gc
 import pprint
 import sys
 import unittest
@@ -12,14 +13,14 @@ class TestGetProfile(unittest.TestCase):
         sys.setprofile(None)
 
     def test_empty(self):
-        assert sys.getprofile() is None
+        self.assertIsNone(sys.getprofile())
 
     def test_setget(self):
         def fn(*args):
             pass
 
         sys.setprofile(fn)
-        assert sys.getprofile() == fn
+        self.assertIs(sys.getprofile(), fn)
 
 class HookWatcher:
     def __init__(self):
@@ -352,19 +353,19 @@ protect_ident = ident(protect)
 
 
 def capture_events(callable, p=None):
-    try:
-        sys.setprofile()
-    except TypeError:
-        pass
-    else:
-        raise support.TestFailed(
-            'sys.setprofile() did not raise TypeError')
-
     if p is None:
         p = HookWatcher()
-    sys.setprofile(p.callback)
-    protect(callable, p)
-    sys.setprofile(None)
+    # Disable the garbage collector. This prevents __del__s from showing up in
+    # traces.
+    old_gc = gc.isenabled()
+    gc.disable()
+    try:
+        sys.setprofile(p.callback)
+        protect(callable, p)
+        sys.setprofile(None)
+    finally:
+        if old_gc:
+            gc.enable()
     return p.get_events()[1:-1]