##// END OF EJS Templates
run-tests: report test duration in Test.tearDown()
Gregory Szorc -
r21450:a6e40416 default
parent child Browse files
Show More
@@ -359,6 +359,7 b' class Test(object):'
359 359 self._finished = None
360 360 self._ret = None
361 361 self._out = None
362 self._duration = None
362 363
363 364 # If we're not in --debug mode and reference output file exists,
364 365 # check test output against it.
@@ -386,6 +387,7 b' class Test(object):'
386 387 self._finished = False
387 388 self._ret = None
388 389 self._out = None
390 self._duration = None
389 391
390 392 def run(self):
391 393 """Run this test instance.
@@ -435,13 +437,14 b' class Test(object):'
435 437 starttime = time.time()
436 438 try:
437 439 ret, out = self._run(testtmp, replacements, env)
438 duration = time.time() - starttime
440 self._duration = time.time() - starttime
439 441 self._finished = True
440 442 self._ret = ret
441 443 self._out = out
442 444 except KeyboardInterrupt:
443 duration = time.time() - starttime
444 log('INTERRUPTED: %s (after %d seconds)' % (self.name, duration))
445 self._duration = time.time() - starttime
446 log('INTERRUPTED: %s (after %d seconds)' % (self.name,
447 self._duration))
445 448 raise
446 449 except Exception, e:
447 450 return self.fail('Exception during execution: %s' % e, 255)
@@ -518,12 +521,14 b' class Test(object):'
518 521 sys.stdout.flush()
519 522 iolock.release()
520 523
521 self._runner.times.append((self.name, duration))
524 if not self._unittest:
525 self.tearDown()
522 526
523 527 return res
524 528
525 529 def tearDown(self):
526 530 """Tasks to perform after run()."""
531 self._runner.times.append((self.name, self._duration))
527 532
528 533 def _run(self, testtmp, replacements, env):
529 534 # This should be implemented in child classes to run tests.
General Comments 0
You need to be logged in to leave comments. Login now