summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2019-11-10 17:20:22 +0100
committerDavid Robillard <d@drobilla.net>2019-11-10 17:20:22 +0100
commita99c1c3a95609aea3f025659709afef375097646 (patch)
tree6e49decfcb9055e3207ac8128e0ad70d5a05a197
parentbb6b880a4e5dd13395414a6a56a91bec2762cf24 (diff)
downloadautowaf-a99c1c3a95609aea3f025659709afef375097646.tar.gz
autowaf-a99c1c3a95609aea3f025659709afef375097646.tar.bz2
autowaf-a99c1c3a95609aea3f025659709afef375097646.zip
Clean up test output
-rw-r--r--extras/autowaf.py27
1 files changed, 15 insertions, 12 deletions
diff --git a/extras/autowaf.py b/extras/autowaf.py
index c0d2e6e..5d08658 100644
--- a/extras/autowaf.py
+++ b/extras/autowaf.py
@@ -979,17 +979,18 @@ class TestContext(Build.BuildContext):
self.max_depth = max(self.max_depth, len(self.stack) - 1)
bld_dir = node.get_bld().parent
- if bld_dir != self.path.get_bld():
- Logs.info('')
- self.original_dir = os.getcwd()
- Logs.info("Waf: Entering directory `%s'\n", bld_dir)
- os.chdir(str(bld_dir))
+ if hasattr(wscript_module, 'test'):
+ self.original_dir = os.getcwd()
+ Logs.info("Waf: Entering directory `%s'", bld_dir)
+ os.chdir(str(bld_dir))
+
+ if not self.env.NO_COVERAGE and str(node.parent) == Context.top_dir:
+ self.clear_coverage()
- if not self.env.NO_COVERAGE and str(node.parent) == Context.top_dir:
- self.clear_coverage()
+ Logs.info('')
+ self.log_good('=' * 10, 'Running %s tests\n', group_name)
- self.log_good('=' * 10, 'Running %s tests', group_name)
super(TestContext, self).pre_recurse(node)
def test_result(self, success):
@@ -1010,9 +1011,12 @@ class TestContext(Build.BuildContext):
duration = (bench_time() - self.start_time) * 1000.0
is_top = str(node.parent) == str(Context.top_dir)
- if is_top and self.max_depth > 1:
- Logs.info('')
+ wscript_module = Context.load_module(node.abspath())
+ if not hasattr(wscript_module, 'test'):
+ os.chdir(self.original_dir)
+ return
+ Logs.info('')
self.log_good('=' * 10, '%d tests from %s ran (%d ms total)',
scope.n_total, scope.name, duration)
@@ -1028,9 +1032,8 @@ class TestContext(Build.BuildContext):
Logs.pprint('GREEN', '[ PASSED ] %d tests' % successes)
if scope.n_failed > 0:
Logs.pprint('RED', '[ FAILED ] %d tests' % scope.n_failed)
- if is_top:
- Logs.info("\nWaf: Leaving directory `%s'" % os.getcwd())
+ Logs.info("\nWaf: Leaving directory `%s'" % os.getcwd())
os.chdir(self.original_dir)
def execute(self):