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 pprint
|
||||||
import sys
|
import sys
|
||||||
import unittest
|
import unittest
|
||||||
|
@ -12,14 +13,14 @@ class TestGetProfile(unittest.TestCase):
|
||||||
sys.setprofile(None)
|
sys.setprofile(None)
|
||||||
|
|
||||||
def test_empty(self):
|
def test_empty(self):
|
||||||
assert sys.getprofile() is None
|
self.assertIsNone(sys.getprofile())
|
||||||
|
|
||||||
def test_setget(self):
|
def test_setget(self):
|
||||||
def fn(*args):
|
def fn(*args):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
sys.setprofile(fn)
|
sys.setprofile(fn)
|
||||||
assert sys.getprofile() == fn
|
self.assertIs(sys.getprofile(), fn)
|
||||||
|
|
||||||
class HookWatcher:
|
class HookWatcher:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
@ -352,19 +353,19 @@ protect_ident = ident(protect)
|
||||||
|
|
||||||
|
|
||||||
def capture_events(callable, p=None):
|
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:
|
if p is None:
|
||||||
p = HookWatcher()
|
p = HookWatcher()
|
||||||
sys.setprofile(p.callback)
|
# Disable the garbage collector. This prevents __del__s from showing up in
|
||||||
protect(callable, p)
|
# traces.
|
||||||
sys.setprofile(None)
|
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]
|
return p.get_events()[1:-1]
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue