1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-02 09:47:23 +03:00

filter-subunit: added a --fail-immediately option

This commit is contained in:
Andrew Tridgell 2010-09-26 18:56:50 -07:00 committed by Jelmer Vernooij
parent c7f6ab890e
commit 71f88c45a7
2 changed files with 11 additions and 2 deletions

View File

@ -19,6 +19,8 @@ parser.add_option("--expected-failures", type="string",
"failures")
parser.add_option("--strip-passed-output", action="store_true",
help="Whether to strip output from tests that passed")
parser.add_option("--fail-immediately", action="store_true",
help="Whether to stop on the first error", default=False)
parser.add_option("--prefix", type="string",
help="Add prefix to all test names")
@ -45,6 +47,7 @@ signal.signal(signal.SIGINT, handle_sigint)
out = subunithelper.SubunitOps(sys.stdout)
msg_ops = subunithelper.FilterOps(out, opts.prefix, expected_failures,
opts.strip_passed_output)
opts.strip_passed_output,
fail_immediately=opts.fail_immediately)
sys.exit(subunithelper.parse_results(msg_ops, statistics, sys.stdin))

View File

@ -258,6 +258,8 @@ class FilterOps(testtools.testresult.TestResult):
self.total_error+=1
self._ops.addError(test, details)
self.output = None
if self.fail_immediately:
raise Exception("test failed and fail_immediately set")
def addSkip(self, test, details=None):
test = self._add_prefix(test)
@ -287,6 +289,8 @@ class FilterOps(testtools.testresult.TestResult):
if self.output:
self._ops.output_msg(self.output)
self.output = None
if self.fail_immediately:
raise Exception("test failed and fail_immediately set")
def addSuccess(self, test, details=None):
test = self._add_prefix(test)
@ -327,7 +331,7 @@ class FilterOps(testtools.testresult.TestResult):
self._ops.end_testsuite(name, result, reason)
def __init__(self, out, prefix, expected_failures, strip_ok_output):
def __init__(self, out, prefix, expected_failures, strip_ok_output, fail_immediately=False):
self._ops = out
self.output = None
self.prefix = prefix
@ -339,3 +343,5 @@ class FilterOps(testtools.testresult.TestResult):
self.total_error = 0
self.total_fail = 0
self.error_added = 0
self.fail_immediately = fail_immediately