1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-03 04:22:09 +03:00

subunit.run: report failure in process return code

The protocol requires that the TestResult object remembers when it has failed, but
in subclassing unittest.TestResult we forgot to ensure this is true.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Douglas Bagnall
2018-02-09 09:51:54 +13:00
committed by Andrew Bartlett
parent d8aa50b217
commit 055b7308d2

View File

@ -94,6 +94,10 @@ class TestProtocolClient(unittest.TestResult):
def __init__(self, stream):
unittest.TestResult.__init__(self)
self._stream = stream
self.failed = False
def wasSuccessful(self):
return not self.failed
def addError(self, test, error=None):
"""Report an error in test test.
@ -102,6 +106,7 @@ class TestProtocolClient(unittest.TestResult):
exc_info tuple.
"""
self._addOutcome("error", test, error=error)
self.failed = True
def addExpectedFailure(self, test, error=None):
"""Report an expected failure in test test.
@ -118,6 +123,7 @@ class TestProtocolClient(unittest.TestResult):
exc_info tuple.
"""
self._addOutcome("failure", test, error=error)
self.failed = True
def _addOutcome(self, outcome, test, error=None, error_permitted=True):
"""Report a failure in test test.
@ -161,6 +167,7 @@ class TestProtocolClient(unittest.TestResult):
"""Report an unexpected success in test test.
"""
self._addOutcome("uxsuccess", test, error_permitted=False)
self.failed = True
def startTest(self, test):
"""Mark a test as starting its test run."""