diff options
author | xudan <xudan16@huawei.com> | 2017-04-10 08:15:03 +0000 |
---|---|---|
committer | xudan <xudan16@huawei.com> | 2017-04-10 08:15:03 +0000 |
commit | ac766b065a8032e4aa90dafef2130292364a2483 (patch) | |
tree | 2fb14e17ab9122327a81c3da75ce23ac54da607a | |
parent | 002d7cb256e4f0753f4b738d7f3d2a7872704314 (diff) |
dovetail tool: show progress during executing test cases
JIRA: DOVETAIL-159
1. It takes long time to execute test cases that most of users think it hangs there,
so a progress is needed to show the test is running.
2. add dynamic progress during execution
3. it' s a fake progress only showing the test is alive,
not to show the percentage of completion.
Change-Id: I0294659f79e8e09d1bcdd36d8f391d933e35b635
Signed-off-by: xudan <xudan16@huawei.com>
-rw-r--r-- | dovetail/utils/dovetail_utils.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/dovetail/utils/dovetail_utils.py b/dovetail/utils/dovetail_utils.py index e72a37ca..766bb646 100644 --- a/dovetail/utils/dovetail_utils.py +++ b/dovetail/utils/dovetail_utils.py @@ -48,9 +48,14 @@ def exec_cmd(cmd, logger=None, exit_on_error=False, info=False, p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) stdout = '' + count = 1 + DEBUG = os.getenv('DEBUG') for line in iter(p.stdout.readline, b''): exec_log(verbose, logger, line.strip(), level, True) stdout += line + if DEBUG is None or DEBUG.lower() != "true": + show_progress_bar(count) + count += 1 stdout = stdout.strip() returncode = p.wait() p.stdout.close() @@ -144,5 +149,5 @@ def show_progress_bar(length): length %= max_len sys.stdout.write('Running ' + ' ' * max_len + '\r') sys.stdout.flush() - sys.stdout.write('Running ' + '=' * length + '>' + '\r') + sys.stdout.write('Running ' + '.' * length + '\r') sys.stdout.flush() |