TW-1936: Tweak tests to have fuller TAP compliance

- Thanks to Paul J. Fenwick.
This commit is contained in:
Paul Beckingham 2017-12-09 23:19:14 -05:00
parent c6a4c578a5
commit 4baf7be64a
4 changed files with 71 additions and 48 deletions

View file

@ -1,4 +1,5 @@
###############################################################################
# taskwarrior - a command line task list manager.
#
# Copyright 2006 - 2017, Paul Beckingham, Federico Hernandez.
#
@ -154,12 +155,12 @@ class TAPTestResult(unittest.result.TestResult):
if status:
if status == "SKIP":
self.stream.writeln("{0} {1} - {2}: {3}".format(
color("skip", "yellow"), self.testsRun, filename, desc)
self.stream.writeln("{0} {1} - {2}: {3} # skip".format(
color("ok", "yellow"), self.testsRun, filename, desc)
)
elif status == "EXPECTED_FAILURE":
self.stream.writeln("{0} {1} - {2}: {3}".format(
color("skip", "yellow"), self.testsRun, filename, desc)
self.stream.writeln("{0} {1} - {2}: {3} # TODO".format(
color("not ok", "yellow"), self.testsRun, filename, desc)
)
else:
self.stream.writeln("{0} {1} - {2}: {3}".format(
@ -226,6 +227,10 @@ class TAPTestRunner(unittest.runner.TextTestRunner):
unittest.signals.registerResult(result)
result.failfast = self.failfast
# TAP requires output is on STDOUT.
# TODO: Define this at __init__ time
result.stream = unittest.runner._WritelnDecorator(sys.stdout)
with warnings.catch_warnings():
if getattr(self, "warnings", None):
# if self.warnings is set, use it to filter all the warnings