Comments
Patch
@@ -553,17 +553,20 @@ class Test(object):
self.testtmp = os.path.join(threadtmp, os.path.basename(path))
os.mkdir(self.testtmp)
self._setreplacements(count)
def run(self, env):
createhgrc(env['HGRCPATH'], self._options)
- return self._run(self._replacements, env)
+ try:
+ return self._run(self._replacements, env)
+ finally:
+ killdaemons(env['DAEMON_PIDS'])
def _run(self, replacements, env):
raise NotImplemented('Subclasses must implement Test.run()')
def _setreplacements(self, count):
port = self._options.port + count * 3
r = [
(r':%s\b' % port, ':$HGPORT'),
@@ -1029,18 +1032,16 @@ def runone(options, test, count):
except KeyboardInterrupt:
endtime = time.time()
log('INTERRUPTED: %s (after %d seconds)' % (test, endtime - starttime))
raise
endtime = time.time()
times.append((test, endtime - starttime))
vlog("# Ret was:", ret)
- killdaemons(env['DAEMON_PIDS'])
-
skipped = (ret == SKIPPED_STATUS)
# If we're not in --debug mode and reference output file exists,
# check test output against it.
if options.debug:
refout = None # to match "out is None"
elif os.path.exists(ref):
f = open(ref, "r")