summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorTim Peters <tim.peters@gmail.com>2006-03-07 23:53:32 (GMT)
committerTim Peters <tim.peters@gmail.com>2006-03-07 23:53:32 (GMT)
commitdf44ab7b1cfb97b29712f40db422f27b2d8d1838 (patch)
tree0c564fe1d04c4d95733766167aa3ab603b06ab2f /Lib/test
parent516999e6e2b1d89bc29a8930d651e4cddf968bfe (diff)
downloadcpython-df44ab7b1cfb97b29712f40db422f27b2d8d1838.zip
cpython-df44ab7b1cfb97b29712f40db422f27b2d8d1838.tar.gz
cpython-df44ab7b1cfb97b29712f40db422f27b2d8d1838.tar.bz2
_hotshot hotshot_profiler(): If write_header() returned
an error code, this let `self` leak. This is a disaster on Windows, since `self` already points to a newly-opened file object, and it was impossible for Python code to close the thing since the only reference to it was in a blob of leaked C memory. test_hotshot test_bad_sys_path(): This new test provoked the C bug above. This test passed, but left an open "@test" file behind, which caused a massive cascade of bogus test failures in later, unrelated tests on Windows. Changed the test code to remove the @test file it leaves behind, which relies on the change above to close that file first.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_hotshot.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/Lib/test/test_hotshot.py b/Lib/test/test_hotshot.py
index 4618439..2751b3f 100644
--- a/Lib/test/test_hotshot.py
+++ b/Lib/test/test_hotshot.py
@@ -109,17 +109,20 @@ class HotShotTestCase(unittest.TestCase):
def test_bad_sys_path(self):
import sys
+ import os
orig_path = sys.path
coverage = hotshot._hotshot.coverage
try:
# verify we require a list for sys.path
sys.path = 'abc'
self.assertRaises(RuntimeError, coverage, test_support.TESTFN)
- # verify sys.path exists
+ # verify that we require sys.path exists
del sys.path
self.assertRaises(RuntimeError, coverage, test_support.TESTFN)
finally:
sys.path = orig_path
+ if os.path.exists(test_support.TESTFN):
+ os.remove(test_support.TESTFN)
def test_main():
test_support.run_unittest(HotShotTestCase)