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
........
+import gc
import pprint
import sys
import unittest
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):
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]