summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_hotshot.py21
1 files changed, 17 insertions, 4 deletions
diff --git a/Lib/test/test_hotshot.py b/Lib/test/test_hotshot.py
index 4ddc907..84af776 100644
--- a/Lib/test/test_hotshot.py
+++ b/Lib/test/test_hotshot.py
@@ -2,9 +2,7 @@ import hotshot
import hotshot.log
import os
import pprint
-import sys
import unittest
-import warnings
import test_support
@@ -21,14 +19,29 @@ def shortfilename(fn):
return fn
+class UnlinkingLogReader(hotshot.log.LogReader):
+ """Extend the LogReader so the log file is unlinked when we're
+ done with it."""
+
+ def __init__(self, logfn):
+ self.__logfn = logfn
+ hotshot.log.LogReader.__init__(self, logfn)
+
+ def next(self, index=None):
+ try:
+ return hotshot.log.LogReader.next(self)
+ except (IndexError, StopIteration):
+ os.unlink(self.__logfn)
+ raise
+
+
class HotShotTestCase(unittest.TestCase):
def new_profiler(self, lineevents=0, linetimings=1):
self.logfn = test_support.TESTFN
return hotshot.Profile(self.logfn, lineevents, linetimings)
def get_logreader(self):
- log = hotshot.log.LogReader(self.logfn)
- #XXX os.unlink(self.logfn)
+ log = UnlinkingLogReader(self.logfn)
return log
def get_events_wotime(self):