summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/core
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-07-15 12:02:50 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-07-18 10:09:29 +0100
commit4abba4c30d5a6163a968a119395a679e5e281ab4 (patch)
treef5fa086271b4348b104df98fdf0adf348806dba1 /meta/lib/oeqa/core
parent07d19fb3adab7a8d83ba83d9a16395f70d7b7a47 (diff)
downloadopenembedded-core-contrib-4abba4c30d5a6163a968a119395a679e5e281ab4.tar.gz
oeqa/decorator: Improve reliability
Checking if the dependency had any failure is unreliable, for example if the underlying data doesn't get transferred and the list is empty, success of the dependency is assumed. Since we now have success data available, change the code to use it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/core')
-rw-r--r--meta/lib/oeqa/core/decorator/depends.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/meta/lib/oeqa/core/decorator/depends.py b/meta/lib/oeqa/core/decorator/depends.py
index 69c604d8f4..950dbaa67a 100644
--- a/meta/lib/oeqa/core/decorator/depends.py
+++ b/meta/lib/oeqa/core/decorator/depends.py
@@ -63,13 +63,15 @@ def _order_test_case_by_depends(cases, depends):
return [cases[case_id] for case_id in cases_ordered]
def _skipTestDependency(case, depends):
- skipReasons = ['errors', 'failures', 'skipped']
-
- for reason in skipReasons:
- for test, _ in getattr(case.tc.results, reason):
- if test.id() in depends:
- raise SkipTest("Test case %s depends on %s and was in %s." \
- % (case.id(), test.id(), reason))
+ for dep in depends:
+ found = False
+ for test, _ in case.tc.results.successes:
+ if test.id() == dep:
+ found = True
+ break
+ if not found:
+ raise SkipTest("Test case %s depends on %s but it didn't pass/run." \
+ % (case.id(), dep))
@registerDecorator
class OETestDepends(OETestDiscover):