commit: aa7558a93d42d73ad916eecd2c3e8c6c294fe735
Author: Sergei Trofimovich <siarheit <AT> google <DOT> com>
AuthorDate: Sat Mar 19 21:29:32 2016 +0000
Commit: Alexander Berntsen <bernalex <AT> gentoo <DOT> org>
CommitDate: Tue Mar 29 10:10:36 2016 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=aa7558a9
runtests: fix output for skipped pythons
I have Pythons 2.7 and 3.4 installed.
Before the patch I had the following output:
$ ./runtests pym/portage/tests/resolver/test_blocker.py
Testing with Python 2.7...
Testing with Python 3.4...
Summary:
| Version | Status
|--------------------
| 2.7 | PASS
| 3.3 | PASS
After the patch:
$ ./runtests pym/portage/tests/resolver/test_blocker.py
Testing with Python 2.7...
Skip Python 3.3...
Testing with Python 3.4...
Skip Python pypy...
Skip Python 3.5...
Summary:
| Version | Status
|--------------------
| 2.7 | PASS
| 3.4 | PASS
Signed-off-by: Sergei Trofimovich <siarheit <AT> google.com>
Signed-off-by: Alexander Berntsen <bernalex <AT> gentoo.org>
Reviewed-by: Alexander Berntsen <bernalex <AT> gentoo.org>
runtests | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/runtests b/runtests
index d492bc8..9135768 100755
--- a/runtests
+++ b/runtests
@@ -42,7 +42,7 @@ class Colors(object):
_COLORS_YES = ('y', 'yes', 'true')
_COLORS_NO = ('n', 'no', 'false')
- GOOD = BAD = NORMAL = ''
+ WARN = GOOD = BAD = NORMAL = ''
def __init__(self, colorize=None):
if colorize is None:
@@ -63,6 +63,7 @@ class Colors(object):
raise ValueError('--colors is invalid: %s' %
colorize)
if colorize:
+ self.WARN = '\033[1;33m'
self.GOOD = '\033[1;32m'
self.BAD = '\033[1;31m'
self.NORMAL = '\033[0m'
@@ -135,11 +136,14 @@ def main(argv):
if os.access(prog, os.X_OK):
print('%sTesting with Python %s...%s' %
(colors.GOOD, ver, colors.NORMAL))
- statuses.append(subprocess.call(cmd))
+ statuses.append((ver, subprocess.call(cmd)))
elif not ignore_missing:
print('%sCould not find requested Python %s%s' %
(colors.BAD, ver, colors.NORMAL))
- statuses.append(1)
+ statuses.append((ver, 1))
+ else:
+ print('%sSkip Python %s...%s' %
+ (colors.WARN, ver, colors.NORMAL))
print()
finally:
if tempdir is not None:
@@ -154,7 +158,9 @@ def main(argv):
width = 10
header = '| %-*s | %s' % (width, 'Version', 'Status')
print('%s\n|%s' % (header, '-' * (len(header) - 1)))
- for ver, status in zip(pyversions, statuses):
+ exit_status = 0
+ for ver, status in statuses:
+ exit_status += status
if status:
color = colors.BAD
msg = 'FAIL'
@@ -163,7 +169,7 @@ def main(argv):
msg = 'PASS'
print('| %s%-*s%s | %s%s%s' %
(color, width, ver, colors.NORMAL, color, msg,
colors.NORMAL))
- exit(sum(statuses))
+ exit(exit_status)
if __name__ == '__main__':