From: Richard Purdie Date: Tue, 13 Nov 2018 21:11:50 +0000 (+0000) Subject: oeqa/runner: Sort the test result output by result class X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=2cc07ab253f1ba6a1f07a66051c9ba6d98cd2357;p=openembedded-core.git 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. Signed-off-by: Richard Purdie --- 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()