From: Douglas Bagnall Date: Thu, 8 Feb 2018 20:51:54 +0000 (+1300) Subject: subunit.run: report failure in process return code X-Git-Tag: tevent-0.9.36~180 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=055b7308d252d3b1501f61884defcd5bbe91049e;p=thirdparty%2Fsamba.git 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 Reviewed-by: Andrew Bartlett --- diff --git a/python/samba/subunit/run.py b/python/samba/subunit/run.py index efaeef902c9..bb598b42452 100755 --- a/python/samba/subunit/run.py +++ b/python/samba/subunit/run.py @@ -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."""