diff options
Diffstat (limited to 'meta/lib/oeqa/core/context.py')
-rw-r--r-- | meta/lib/oeqa/core/context.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/meta/lib/oeqa/core/context.py b/meta/lib/oeqa/core/context.py index 7882697e28..68819cc338 100644 --- a/meta/lib/oeqa/core/context.py +++ b/meta/lib/oeqa/core/context.py | |||
@@ -50,10 +50,18 @@ class OETestContext(object): | |||
50 | def func(): | 50 | def func(): |
51 | raise unittest.SkipTest(skipmsg) | 51 | raise unittest.SkipTest(skipmsg) |
52 | return func | 52 | return func |
53 | class_ids = {} | ||
53 | for test in self.suites: | 54 | for test in self.suites: |
55 | if test.__class__ not in class_ids: | ||
56 | class_ids[test.__class__] = '.'.join(test.id().split('.')[:-1]) | ||
54 | for skip in skips: | 57 | for skip in skips: |
55 | if (test.id()+'.').startswith(skip+'.'): | 58 | if (test.id()+'.').startswith(skip+'.'): |
56 | setattr(test, 'setUp', skipfuncgen('Skip by the command line argument "%s"' % skip)) | 59 | setattr(test, 'setUp', skipfuncgen('Skip by the command line argument "%s"' % skip)) |
60 | for tclass in class_ids: | ||
61 | cid = class_ids[tclass] | ||
62 | for skip in skips: | ||
63 | if (cid + '.').startswith(skip + '.'): | ||
64 | setattr(tclass, 'setUpHooker', skipfuncgen('Skip by the command line argument "%s"' % skip)) | ||
57 | 65 | ||
58 | def loadTests(self, module_paths, modules=[], tests=[], | 66 | def loadTests(self, module_paths, modules=[], tests=[], |
59 | modules_manifest="", modules_required=[], filters={}): | 67 | modules_manifest="", modules_required=[], filters={}): |