aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <siarheit@google.com>2016-03-19 21:29:32 +0000
committerAlexander Berntsen <bernalex@gentoo.org>2016-03-29 12:10:36 +0200
commitaa7558a93d42d73ad916eecd2c3e8c6c294fe735 (patch)
treec362e2093ba4e117bea7cb1f6af80b23e12f2111 /runtests
parentcleanup: fix spaces to tabs in depgraph.py (diff)
downloadportage-aa7558a93d42d73ad916eecd2c3e8c6c294fe735.tar.gz
portage-aa7558a93d42d73ad916eecd2c3e8c6c294fe735.tar.bz2
portage-aa7558a93d42d73ad916eecd2c3e8c6c294fe735.zip
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@google.com> Signed-off-by: Alexander Berntsen <bernalex@gentoo.org> Reviewed-by: Alexander Berntsen <bernalex@gentoo.org>
Diffstat (limited to 'runtests')
-rwxr-xr-xruntests16
1 files changed, 11 insertions, 5 deletions
diff --git a/runtests b/runtests
index d492bc891..913576893 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__':