Bug 1370359 - Stop dumping all tests to errorsummary.log; include manifest in error lines, r?jgraham
MozReview-Commit-ID: 9m0ArgifgU9
--- a/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py
+++ b/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py
@@ -5,39 +5,42 @@
import json
from base import BaseFormatter
class ErrorSummaryFormatter(BaseFormatter):
def __init__(self):
+ self.groups = None
self.line_count = 0
def __call__(self, data):
rv = BaseFormatter.__call__(self, data)
self.line_count += 1
return rv
def _output(self, data_type, data):
data["action"] = data_type
data["line"] = self.line_count
return "%s\n" % json.dumps(data)
def _output_test(self, test, subtest, item):
data = {"test": test,
"subtest": subtest,
+ "group": self.groups.get(test, ''),
"status": item["status"],
"expected": item["expected"],
"message": item.get("message"),
"stack": item.get("stack")}
return self._output("test_result", data)
def suite_start(self, item):
- return self._output("test_groups", {"tests": item["tests"]})
+ self.groups = {v: k for k in item["tests"] for v in item["tests"][k]}
+ return self._output("test_groups", {"groups": item["tests"].keys()})
def test_status(self, item):
if "expected" not in item:
return
return self._output_test(item["test"], item["subtest"], item)
def test_end(self, item):
if "expected" not in item: