mirror of https://github.com/python/cpython
Merged revisions 85589-85591 via svnmerge from
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 ........
This commit is contained in:
parent
e9633491ca
commit
67295c3533
|
@ -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]
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue