[OE-core] [PATCH 2/2] oeqa/selftest/kernel.py: Add new file destined for kernel related tests

Alexander Kanavin alexander.kanavin at linux.intel.com
Wed Nov 2 17:05:05 UTC 2016


From: Costin Constantin <costin.c.constantin at intel.com>

[YP#7202]:  Test for linux-dummy
The new kernel.py file is intended for kernel related test cases.
The test for linux-dummy will ensure it is in good shape and can
be used as a kernel replacement at build time. To do this, the
test will first clean sstate for linux-dummy target, ensuring no
file is present in the stamps directory. After, core-image-minimal
is built, ensuring linux-dummy can be used as a kernel substitute.

(From OE-Core rev: 98c6ebf1e05158c689e01b785d32757847cdb10c)

Signed-off-by: Costin Constantin <costin.c.constantin at intel.com>
Signed-off-by: Ross Burton <ross.burton at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
Signed-off-by: Alexander Kanavin <alexander.kanavin at linux.intel.com>
---
 meta/lib/oeqa/selftest/kernel.py | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
 create mode 100644 meta/lib/oeqa/selftest/kernel.py

diff --git a/meta/lib/oeqa/selftest/kernel.py b/meta/lib/oeqa/selftest/kernel.py
new file mode 100644
index 0000000..3fe3517
--- /dev/null
+++ b/meta/lib/oeqa/selftest/kernel.py
@@ -0,0 +1,29 @@
+import os
+import oeqa.utils.ftools as ftools
+from oeqa.selftest.base import oeSelfTest
+from oeqa.utils.commands import runCmd, bitbake, get_bb_var
+from oeqa.utils.decorators import testcase
+
+class KernelTests(oeSelfTest):
+    def  test_dummy_kernel(self):
+        """
+        [YP#7202]
+        - test that linux-dummy target can be used as kernel provider for an image
+        - check no "multiple providers are available for" message is received while building the image
+        """
+        config_param = 'PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"'
+        self.append_config(config_param)
+        arch_dir = get_bb_var('MULTIMACH_TARGET_SYS', target='linux-dummy')
+        stamps_dir = os.path.join(os.getenv('BUILDDIR'), "tmp/stamps")
+        lnx_dmy_stamps_dir = os.path.join(stamps_dir, arch_dir, 'linux-dummy')
+        res = bitbake("linux-dummy -ccleansstate") # ensure we have nothing related to linux-dummy in stamps dir.
+        self.assertFalse(os.listdir(lnx_dmy_stamps_dir), msg='linux-dummy stamps dir. should have been cleaned. Something \
+                         happened with bitbake linux-dummy -ccleansstate')
+        res = bitbake("core-image-minimal")# testing linux-dummy is both buildable and usable within an image
+        self.remove_config(config_param)
+        self.assertEqual(res.status, 0, msg="core-image-minimal failed to build. Please check logs. ")
+        self.assertNotIn("multiple providers are available for", res.output, msg="'multiple providers are available for\
+                        linux-dummy' message received during buildtime.")
+        self.assertTrue(os.listdir(lnx_dmy_stamps_dir), msg="linux-dummy didn't build correctly. No stamp present in stamps \
+                        dir. %s" % lnx_dmy_stamps_dir)
+         
-- 
2.10.1




More information about the Openembedded-core mailing list