diff options
author | Mariano Lopez <mariano.lopez@linux.intel.com> | 2016-12-12 10:12:15 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-01-23 12:03:56 +0000 |
commit | a81045f4e2b740173237f5ae4e80e2bc0b287faa (patch) | |
tree | d66838bb99cce150596639cb20be074cdea33e7c /meta | |
parent | 95a55e0736fc59ecdcb88d43f08b447ffa5a43ed (diff) | |
download | openembedded-core-a81045f4e2b740173237f5ae4e80e2bc0b287faa.tar.gz openembedded-core-a81045f4e2b740173237f5ae4e80e2bc0b287faa.tar.bz2 openembedded-core-a81045f4e2b740173237f5ae4e80e2bc0b287faa.zip |
oeqa/core/decorator: Add skipIfNotDataVar and skipIfNotInDataVar
skipIfNotDataVar will skip a test if a variable doesn't have certain value.
skipIfNotInDataVar will skip a test if a value is not in a certain variable.
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/lib/oeqa/core/decorator/data.py | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/meta/lib/oeqa/core/decorator/data.py b/meta/lib/oeqa/core/decorator/data.py index fdeba9fe1d..ff7bdd98b7 100644 --- a/meta/lib/oeqa/core/decorator/data.py +++ b/meta/lib/oeqa/core/decorator/data.py @@ -28,12 +28,46 @@ class skipIfDataVar(OETestDecorator): attrs = ('var', 'value', 'msg') def setUpDecorator(self): - msg = 'Checking if %r value is %r to skip test' % (self.var, self.value) + msg = ('Checking if %r value is %r to skip test' % + (self.var, self.value)) self.logger.debug(msg) if self.case.td.get(self.var) == self.value: self.case.skipTest(self.msg) @registerDecorator +class skipIfNotDataVar(OETestDecorator): + """ + Skip test based on value of a data store's variable. + + It will get the info of var from the data store and will + check it against value; if are not equal it will skip the + test with msg as the reason. + """ + + attrs = ('var', 'value', 'msg') + + def setUpDecorator(self): + msg = ('Checking if %r value is not %r to skip test' % + (self.var, self.value)) + self.logger.debug(msg) + if not self.case.td.get(self.var) == self.value: + self.case.skipTest(self.msg) + +@registerDecorator +class skipIfNotInDataVar(OETestDecorator): + """ + Skip test if value is not in data store's variable. + """ + + attrs = ('var', 'value', 'msg') + def setUpDecorator(self): + msg = ('Checking if %r value is in %r to run ' + 'the test' % (self.var, self.value)) + self.logger.debug(msg) + if not self.value in self.case.td.get(self.var): + self.case.skipTest(self.msg) + +@registerDecorator class OETestDataDepends(OETestDecorator): attrs = ('td_depends',) |