diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2021-02-10 09:29:08 +0100 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2021-02-10 10:57:55 +0100 |
commit | 711d9feb4e56dabb66f31f1b44ff99145d42dba4 (patch) | |
tree | 76c003ae01cbd9e668d38b46e18a990746a9c414 | |
parent | 3506d8daf2e67ad44d71f04943a427a42e96031f (diff) | |
download | meson-711d9feb4e56dabb66f31f1b44ff99145d42dba4.zip meson-711d9feb4e56dabb66f31f1b44ff99145d42dba4.tar.gz meson-711d9feb4e56dabb66f31f1b44ff99145d42dba4.tar.bz2 |
mtest: fix nits in printing test stdout
- Ensure the output is terminated with a \n even if the test does not
include one.
- Ensure that stdout is flushed for each reported result
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r-- | mesonbuild/mtest.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/mesonbuild/mtest.py b/mesonbuild/mtest.py index f60f5b0..3887973 100644 --- a/mesonbuild/mtest.py +++ b/mesonbuild/mtest.py @@ -141,7 +141,8 @@ def add_arguments(parser: argparse.ArgumentParser) -> None: '"subprojname:" to run all tests defined by "subprojname".') -def print_safe(s: str, end: str = '\n') -> None: +def print_safe(s: str) -> None: + end = '' if s[-1] == '\n' else '\n' try: print(s, end=end) except UnicodeEncodeError: @@ -639,9 +640,8 @@ class ConsoleLogger(TestLogger): log = self.shorten_log(harness, result) if log: print(self.output_start) - print_safe(log, end='') + print_safe(log) print(self.output_end) - print(flush=True) def log_subtest(self, harness: 'TestHarness', test: 'TestRun', s: str, result: TestResult) -> None: if harness.options.verbose or (harness.options.print_errorlogs and result.is_bad()): @@ -665,12 +665,13 @@ class ConsoleLogger(TestLogger): if not result.needs_parsing: print(self.output_end) print(harness.format(result, mlog.colorize_console(), max_left_width=self.max_left_width)) - print(flush=True) else: print(harness.format(result, mlog.colorize_console(), max_left_width=self.max_left_width), flush=True) if harness.options.verbose or result.res.is_bad(): self.print_log(harness, result) + if harness.options.verbose or result.res.is_bad(): + print(flush=True) self.request_update() |