summaryrefslogtreecommitdiffstats
path: root/autowaf.py
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2016-07-11 11:56:42 -0400
committerDavid Robillard <d@drobilla.net>2016-07-11 11:56:42 -0400
commitdff09cf37e7f60dd3bcf70e46b2e52eda62d1c60 (patch)
tree7ec0952ecd9071c13f85b560f9c933faf4e0740b /autowaf.py
parent9a3f7779f787f30cafba54290a9700049dfd393d (diff)
downloadautowaf-dff09cf37e7f60dd3bcf70e46b2e52eda62d1c60.tar.gz
autowaf-dff09cf37e7f60dd3bcf70e46b2e52eda62d1c60.tar.bz2
autowaf-dff09cf37e7f60dd3bcf70e46b2e52eda62d1c60.zip
Fix recursive test reporting
Diffstat (limited to 'autowaf.py')
-rw-r--r--autowaf.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/autowaf.py b/autowaf.py
index 594f64a..8d7cf72 100644
--- a/autowaf.py
+++ b/autowaf.py
@@ -602,6 +602,9 @@ def pre_test(ctx, appname, dirs=['src']):
ctx.autowaf_tests_failed = 0
ctx.autowaf_local_tests_total = 0
ctx.autowaf_local_tests_failed = 0
+ ctx.autowaf_tests = {}
+
+ ctx.autowaf_tests[appname] = { 'total': 0, 'failed': 0 }
diropts = ''
for i in dirs:
@@ -653,12 +656,12 @@ def post_test(ctx, appname, dirs=['src'], remove=['*boost*', 'c++*']):
coverage_lcov.close()
coverage_log.close()
- if ctx.autowaf_tests_failed > 0:
+ if ctx.autowaf_tests[appname]['failed'] > 0:
Logs.pprint('RED', '\nSummary: %d / %d %s tests failed' % (
- ctx.autowaf_local_tests_failed, ctx.autowaf_local_tests_total, appname))
+ ctx.autowaf_tests[appname]['failed'], ctx.autowaf_tests[appname]['total'], appname))
else:
Logs.pprint('GREEN', '\nSummary: All %d %s tests passed' % (
- ctx.autowaf_local_tests_total, appname))
+ ctx.autowaf_tests[appname]['total'], appname))
Logs.pprint('GREEN', 'Coverage: <file://%s>\n'
% os.path.abspath('coverage/index.html'))
@@ -676,6 +679,7 @@ def run_test(ctx, appname, test, desired_status=0, dirs=['src'], name='', header
ctx.autowaf_tests_total += 1
ctx.autowaf_local_tests_total += 1
+ ctx.autowaf_tests[appname]['total'] += 1
if type(test) == list:
name = test[0]
@@ -707,8 +711,8 @@ def run_test(ctx, appname, test, desired_status=0, dirs=['src'], name='', header
Logs.pprint('RED', '** FAIL %s' % name)
if type(test) != list:
Logs.pprint('NORMAL', out[1])
- ctx.autowaf_local_tests_failed += 1
ctx.autowaf_tests_failed += 1
+ ctx.autowaf_tests[appname]['failed'] += 1
return False
def tests_name(ctx, appname, name='*'):