diff options
author | Armin Kuster <akuster808@gmail.com> | 2019-11-11 20:33:21 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-11-14 12:56:05 +0000 |
commit | 1b1e53c4ad33a71d526887d1133598f255a476ec (patch) | |
tree | f5f24992d0c041ed7a1b6e01c7fcbf34d8cacdaa /meta/lib/oeqa/core | |
parent | e69f963e548e2f6f211a56406694c029111d7203 (diff) | |
download | openembedded-core-contrib-1b1e53c4ad33a71d526887d1133598f255a476ec.tar.gz |
oeqa/core: Add qemu checks
Some test should not be run in QEMU systems so
add some checks to make that easier
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/core')
-rw-r--r-- | meta/lib/oeqa/core/decorator/data.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/meta/lib/oeqa/core/decorator/data.py b/meta/lib/oeqa/core/decorator/data.py index ff92fba57a..bc4939e87c 100644 --- a/meta/lib/oeqa/core/decorator/data.py +++ b/meta/lib/oeqa/core/decorator/data.py @@ -27,6 +27,16 @@ def has_machine(td, machine): return True return False +def is_qemu(td, qemu): + """ + Checks if MACHINE is qemu. + """ + + machine = td.get('MACHINE', '') + if (qemu in td.get('MACHINE', '') or + machine.startswith('qemu')): + return True + return False @registerDecorator class skipIfDataVar(OETestDecorator): @@ -175,3 +185,38 @@ class skipIfMachine(OETestDecorator): self.logger.debug(msg) if has_machine(self.case.td, self.value): self.case.skipTest(self.msg) + +@registerDecorator +class skipIfNotQemu(OETestDecorator): + """ + Skip test based on MACHINE. + + value must be a qemu MACHINE or it will skip the test + with msg as the reason. + """ + + attrs = ('value', 'msg') + + def setUpDecorator(self): + msg = ('Checking if %s is not this MACHINE' % self.value) + self.logger.debug(msg) + if not is_qemu(self.case.td, self.value): + self.case.skipTest(self.msg) + +@registerDecorator +class skipIfQemu(OETestDecorator): + """ + Skip test based on Qemu Machine. + + value must not be a qemu machine or it will skip the test + with msg as the reason. + """ + + attrs = ('value', 'msg') + + def setUpDecorator(self): + msg = ('Checking if %s is this MACHINE' % self.value) + self.logger.debug(msg) + if is_qemu(self.case.td, self.value): + self.case.skipTest(self.msg) + |