Disable gc when running test_trace, or we may record the __del__ of collected objects.
See http://mail.python.org/pipermail/python-checkins/2008-April/068633.html the extra events perfectly match several calls to socket._fileobject.__del__()
This commit is contained in:
parent
bf027c48c8
commit
48ebc264f8
|
@ -4,6 +4,7 @@ from test import test_support
|
|||
import unittest
|
||||
import sys
|
||||
import difflib
|
||||
import gc
|
||||
|
||||
# A very basic example. If this fails, we're in deep trouble.
|
||||
def basic():
|
||||
|
@ -244,6 +245,17 @@ class Tracer:
|
|||
return self.trace
|
||||
|
||||
class TraceTestCase(unittest.TestCase):
|
||||
|
||||
# Disable gc collection when tracing, otherwise the
|
||||
# deallocators may be traced as well.
|
||||
def setUp(self):
|
||||
self.using_gc = gc.isenabled()
|
||||
gc.disable()
|
||||
|
||||
def tearDown(self):
|
||||
if self.using_gc:
|
||||
gc.enable()
|
||||
|
||||
def compare_events(self, line_offset, events, expected_events):
|
||||
events = [(l - line_offset, e) for (l, e) in events]
|
||||
if events != expected_events:
|
||||
|
|
Loading…
Reference in New Issue