1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-31 12:49:46 +00:00

oeqa/runner: Ensure we don't print misleading results output

The current code assumes if something isn't a failure of some
kind, it was a pass. When test case IDs weren't matching, this lead
to very confusing output where things would fail, then be listed as
passing.

This adds code to track successes, ensuring we don't end up in this
position again with unmatched entries being listed as UNKNOWN.

(From OE-Core rev: 4374c296d8963e4f6a1aa7bef7983ad0a1c2fcff)

(From OE-Core rev: bcb2948773d76befef2be787be6d25cf544e49a9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2018-07-11 11:46:01 +00:00
parent 521d02e6f5
commit 783e1ae8fa
+11 -3
View File
@@ -42,6 +42,8 @@ class OETestResult(_TestResult):
def __init__(self, tc, *args, **kwargs): def __init__(self, tc, *args, **kwargs):
super(OETestResult, self).__init__(*args, **kwargs) super(OETestResult, self).__init__(*args, **kwargs)
self.successes = []
self.tc = tc self.tc = tc
self._tc_map_results() self._tc_map_results()
@@ -58,6 +60,7 @@ class OETestResult(_TestResult):
self.tc._results['errors'] = self.errors self.tc._results['errors'] = self.errors
self.tc._results['skipped'] = self.skipped self.tc._results['skipped'] = self.skipped
self.tc._results['expectedFailures'] = self.expectedFailures self.tc._results['expectedFailures'] = self.expectedFailures
self.tc._results['successes'] = self.successes
def logSummary(self, component, context_msg=''): def logSummary(self, component, context_msg=''):
elapsed_time = self.tc._run_end_time - self.tc._run_start_time elapsed_time = self.tc._run_end_time - self.tc._run_start_time
@@ -115,13 +118,18 @@ class OETestResult(_TestResult):
return (found, None) return (found, None)
def addSuccess(self, test):
#Added so we can keep track of successes too
self.successes.append((test, None))
super(OETestResult, self).addSuccess(test)
def logDetails(self): def logDetails(self):
self.tc.logger.info("RESULTS:") self.tc.logger.info("RESULTS:")
for case_name in self.tc._registry['cases']: for case_name in self.tc._registry['cases']:
case = self.tc._registry['cases'][case_name] case = self.tc._registry['cases'][case_name]
result_types = ['failures', 'errors', 'skipped', 'expectedFailures'] result_types = ['failures', 'errors', 'skipped', 'expectedFailures', 'successes']
result_desc = ['FAILED', 'ERROR', 'SKIPPED', 'EXPECTEDFAIL'] result_desc = ['FAILED', 'ERROR', 'SKIPPED', 'EXPECTEDFAIL', 'PASSED']
fail = False fail = False
desc = None desc = None
@@ -143,7 +151,7 @@ class OETestResult(_TestResult):
oeid, desc)) oeid, desc))
else: else:
self.tc.logger.info("RESULTS - %s - Testcase %s: %s" % (case.id(), self.tc.logger.info("RESULTS - %s - Testcase %s: %s" % (case.id(),
oeid, 'PASSED')) oeid, 'UNKNOWN'))
class OEListTestsResult(object): class OEListTestsResult(object):
def wasSuccessful(self): def wasSuccessful(self):