|
|
|
@ -641,10 +641,21 @@ class TestHarness: |
|
|
|
|
self.suites = list(ss) |
|
|
|
|
|
|
|
|
|
def __del__(self) -> None: |
|
|
|
|
self.close_logfiles() |
|
|
|
|
|
|
|
|
|
def __enter__(self): |
|
|
|
|
return self |
|
|
|
|
|
|
|
|
|
def __exit__(self, exc_type, exc_value, traceback) -> None: |
|
|
|
|
self.close_logfiles() |
|
|
|
|
|
|
|
|
|
def close_logfiles(self) -> None: |
|
|
|
|
if self.logfile: |
|
|
|
|
self.logfile.close() |
|
|
|
|
self.logfile = None |
|
|
|
|
if self.jsonlogfile: |
|
|
|
|
self.jsonlogfile.close() |
|
|
|
|
self.jsonlogfile = None |
|
|
|
|
|
|
|
|
|
def merge_suite_options(self, options: argparse.Namespace, test: 'TestSerialisation') -> typing.Dict[str, str]: |
|
|
|
|
if ':' in options.setup: |
|
|
|
@ -1012,8 +1023,8 @@ def run(options: argparse.Namespace) -> int: |
|
|
|
|
if not rebuild_all(options.wd): |
|
|
|
|
return 1 |
|
|
|
|
|
|
|
|
|
with TestHarness(options) as th: |
|
|
|
|
try: |
|
|
|
|
th = TestHarness(options) |
|
|
|
|
if options.list: |
|
|
|
|
return list_tests(th) |
|
|
|
|
if not options.args: |
|
|
|
|