From 3f2c5e0e24cc767ec023b5c54935a1dfc6306b81 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 13 Nov 2018 21:11:50 +0000 Subject: oeqa/runner: Sort the test result output by result class We want to see failures/errors listed last since this is the most easily visible part of the log on consoles or autobuilder output and makes human processing easier rather than having to scroll up and scan for a single failure. (From OE-Core rev: 2cc07ab253f1ba6a1f07a66051c9ba6d98cd2357) Signed-off-by: Richard Purdie --- meta/lib/oeqa/core/runner.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'meta/lib/oeqa') diff --git a/meta/lib/oeqa/core/runner.py b/meta/lib/oeqa/core/runner.py index 0cb1a95c1e..f8bb23f344 100644 --- a/meta/lib/oeqa/core/runner.py +++ b/meta/lib/oeqa/core/runner.py @@ -107,6 +107,7 @@ class OETestResult(_TestResult): self.tc.logger.info("RESULTS:") result = {} + logs = {} if hasattr(self.tc, "extraresults"): result = self.tc.extraresults @@ -121,8 +122,19 @@ class OETestResult(_TestResult): if hasattr(d, 'oeid'): oeid = d.oeid - self.tc.logger.info("RESULTS - %s - Testcase %s: %s" % (case.id(), oeid, status)) - result[case.id()] = {'status': status, 'log': log} + if status not in logs: + logs[status] = [] + logs[status].append("RESULTS - %s - Testcase %s: %s" % (case.id(), oeid, status)) + if log: + result[case.id()] = {'status': status, 'log': log} + else: + result[case.id()] = {'status': status} + + for i in ['PASSED', 'SKIPPED', 'EXPECTEDFAIL', 'ERROR', 'FAILED', 'UNKNOWN']: + if i not in logs: + continue + for l in logs[i]: + self.tc.logger.info(l) if json_file_dir: tresultjsonhelper = OETestResultJSONHelper() -- cgit v1.2.3-54-g00ecf