X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Fframework.py;h=f7a155f41cb203803f82e58fbb89cc5e67c0fb89;hb=5e2c54d02906a7b4787a1f41b59baf97c3a4a840;hp=6a5477d2ea732a92c64d977dbcf854bfdab2ac71;hpb=184870ac5a266c37987e4a4d97ab4d4efefacb1f;p=vpp.git diff --git a/test/framework.py b/test/framework.py index 6a5477d2ea7..f7a155f41cb 100644 --- a/test/framework.py +++ b/test/framework.py @@ -957,6 +957,7 @@ class VppTestResult(unittest.TestResult): self.verbosity = verbosity self.result_string = None self.printer = TestCasePrinter() + self.passed = 0 def addSuccess(self, test): """ @@ -970,6 +971,7 @@ class VppTestResult(unittest.TestResult): % (test.__class__.__name__, test._testMethodName, test._testMethodDoc)) + self.passed += 1 unittest.TestResult.addSuccess(self, test) self.result_string = colorize("OK", GREEN) @@ -1013,6 +1015,12 @@ class VppTestResult(unittest.TestResult): if logger: logger.error(e) + def send_results_through_pipe(self): + if hasattr(self, 'test_framework_results_pipe'): + pipe = self.test_framework_results_pipe + if pipe: + pipe.send(self) + def addFailure(self, test, err): """ Record a test failed result @@ -1085,7 +1093,7 @@ class VppTestResult(unittest.TestResult): def stopTest(self, test): """ - Stop a test + Called when the given test has been run :param test: @@ -1099,6 +1107,7 @@ class VppTestResult(unittest.TestResult): else: self.stream.writeln("%-73s%s" % (self.getDescription(test), self.result_string)) + self.send_results_through_pipe() def printErrors(self): """ @@ -1135,7 +1144,8 @@ class VppTestRunner(unittest.TextTestRunner): return VppTestResult def __init__(self, keep_alive_pipe=None, descriptions=True, verbosity=1, - failfast=False, buffer=False, resultclass=None): + results_pipe=None, failfast=False, buffer=False, + resultclass=None): # ignore stream setting here, use hard-coded stdout to be in sync # with prints from VppTestCase methods ... super(VppTestRunner, self).__init__(sys.stdout, descriptions, @@ -1144,6 +1154,8 @@ class VppTestRunner(unittest.TextTestRunner): reporter = KeepAliveReporter() reporter.pipe = keep_alive_pipe + VppTestResult.test_framework_results_pipe = results_pipe + def run(self, test): """ Run the tests