From: Julian Lettner Date: Mon, 25 Feb 2019 07:37:44 +0000 (-0800) Subject: [lit] Extract Display.print_header function X-Git-Tag: llvmorg-11-init~5331 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=20bb48c7a7dad630c5e81c28d18edc55f1206821;p=platform%2Fupstream%2Fllvm.git [lit] Extract Display.print_header function --- diff --git a/llvm/utils/lit/lit/ProgressBar.py b/llvm/utils/lit/lit/ProgressBar.py index 57b354e..cefde67 100644 --- a/llvm/utils/lit/lit/ProgressBar.py +++ b/llvm/utils/lit/lit/ProgressBar.py @@ -241,7 +241,7 @@ class ProgressBar: self.useETA = useETA if self.useETA: self.startTime = time.time() - self.update(0, '') + # self.update(0, '') def update(self, percent, message): if self.cleared: diff --git a/llvm/utils/lit/lit/display.py b/llvm/utils/lit/lit/display.py index 687c57e..05b752a 100644 --- a/llvm/utils/lit/lit/display.py +++ b/llvm/utils/lit/lit/display.py @@ -14,30 +14,33 @@ def create_display(opts, tests, total_tests, workers): try: tc = lit.ProgressBar.TerminalController() progress_bar = lit.ProgressBar.ProgressBar(tc, header) + header = None except ValueError: - print(header) progress_bar = lit.ProgressBar.SimpleProgressBar('Testing: ') - else: - print(header) - if progress_bar: - progress_bar.update(0, '') - - return Display(opts, tests, progress_bar) + return Display(opts, tests, header, progress_bar) class NopDisplay(object): + def print_header(self): pass def update(self, test): pass - def finish(self): pass + def clear(self): pass class Display(object): - def __init__(self, opts, tests, progress_bar): + def __init__(self, opts, tests, header, progress_bar): self.opts = opts self.tests = tests + self.header = header self.progress_bar = progress_bar self.completed = 0 + def print_header(self): + if self.header: + print(self.header) + if self.progress_bar: + self.progress_bar.update(0.0, '') + def update(self, test): self.completed += 1 @@ -45,6 +48,8 @@ class Display(object): self.opts.showAllOutput or \ (not self.opts.quiet and not self.opts.succinct) if show_result: + if self.progress_bar: + self.progress_bar.clear() self.print_result(test) if self.progress_bar: @@ -53,15 +58,12 @@ class Display(object): percent = float(self.completed) / self.tests self.progress_bar.update(percent, test.getFullName()) - def finish(self): + def clear(self): if self.progress_bar: self.progress_bar.clear() sys.stdout.write('\n') def print_result(self, test): - if self.progress_bar: - self.progress_bar.clear() - # Show the test result line. test_name = test.getFullName() print('%s: %s (%d of %d)' % (test.result.code.name, test_name, diff --git a/llvm/utils/lit/lit/main.py b/llvm/utils/lit/lit/main.py index 81731e7..337d154 100755 --- a/llvm/utils/lit/lit/main.py +++ b/llvm/utils/lit/lit/main.py @@ -179,6 +179,7 @@ def run_tests(tests, litConfig, opts, numTotalTests): run = lit.run.create_run(tests, litConfig, opts.numWorkers, progress_callback, opts.timeout) + display.print_header() try: elapsed = execute_in_tmp_dir(run, litConfig) except KeyboardInterrupt: @@ -188,9 +189,9 @@ def run_tests(tests, litConfig, opts, numTotalTests): # TODO(yln): change display to update when test starts, not when test completes # Ensure everything still works with SimpleProgressBar as well # finally: - # display.finish() + # display.clear() - display.finish() + display.clear() return elapsed def execute_in_tmp_dir(run, litConfig):