[OE-core] [PATCH 1/1] selftest/runtime-test.py: Add test for import test from other layers

mariano.lopez at linux.intel.com mariano.lopez at linux.intel.com
Mon Jun 13 13:32:33 UTC 2016


From: Mariano Lopez <mariano.lopez at linux.intel.com>

There are some features in testimage/testexport that are not tested;
this might lead to break some of these features without notice.

This adds a new test in order to test two features of testimage:
  - Import test from other layers.
  - Install/Unistall in the DUT without a package manager.

[YOCTO #9764]
[YOCTO #9766]

Signed-off-by: Mariano Lopez <mariano.lopez at linux.intel.com>
---
 meta-selftest/lib/oeqa/runtime/selftest.json       |  6 +++++
 meta-selftest/lib/oeqa/runtime/selftest.py         | 31 ++++++++++++++++++++++
 .../selftest/{testexport.py => runtime-test.py}    | 19 +++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 meta-selftest/lib/oeqa/runtime/selftest.json
 create mode 100644 meta-selftest/lib/oeqa/runtime/selftest.py
 rename meta/lib/oeqa/selftest/{testexport.py => runtime-test.py} (76%)

diff --git a/meta-selftest/lib/oeqa/runtime/selftest.json b/meta-selftest/lib/oeqa/runtime/selftest.json
new file mode 100644
index 0000000..e5ae46e
--- /dev/null
+++ b/meta-selftest/lib/oeqa/runtime/selftest.json
@@ -0,0 +1,6 @@
+{
+    "test_install_package": {
+        "pkg": "socat",
+        "rm": true
+    }
+}
diff --git a/meta-selftest/lib/oeqa/runtime/selftest.py b/meta-selftest/lib/oeqa/runtime/selftest.py
new file mode 100644
index 0000000..b9c9b23
--- /dev/null
+++ b/meta-selftest/lib/oeqa/runtime/selftest.py
@@ -0,0 +1,31 @@
+from oeqa.oetest import oeRuntimeTest, skipModule
+from oeqa.utils.decorators import *
+
+class Selftest(oeRuntimeTest):
+
+    @skipUnlessPassed("test_ssh")
+    def test_install_package(self):
+        """
+        Summary: Check basic package installation functionality.
+        Expected: 1. Before the test socat must be installed using scp.
+                  2. After the test socat must be unistalled using ssh.
+                     This can't be checked in this test.
+        Product: oe-core
+        Author: Mariano Lopez <mariano.lopez at intel.com>
+        """
+
+        (status, output) = self.target.run("socat -V")
+        self.assertEqual(status, 0, msg="socat is not installed")
+
+    @skipUnlessPassed("test_install_package")
+    def test_verify_unistall(self):
+        """
+        Summary: Check basic package installation functionality.
+        Expected: 1. test_install_package must unistall socat.
+                     This test is just to verify that.
+        Product: oe-core
+        Author: Mariano Lopez <mariano.lopez at intel.com>
+        """
+
+        (status, output) = self.target.run("socat -V")
+        self.assertNotEqual(status, 0, msg="socat is still installed")
diff --git a/meta/lib/oeqa/selftest/testexport.py b/meta/lib/oeqa/selftest/runtime-test.py
similarity index 76%
rename from meta/lib/oeqa/selftest/testexport.py
rename to meta/lib/oeqa/selftest/runtime-test.py
index 5823b13..1e1d3b0 100644
--- a/meta/lib/oeqa/selftest/testexport.py
+++ b/meta/lib/oeqa/selftest/runtime-test.py
@@ -42,3 +42,22 @@ class TestExport(oeSelfTest):
             # Verify ping test was succesful
             failure = True if 'FAIL' in result.output else False
             self.assertNotEqual(True, failure, 'ping test failed')
+
+
+class TestImage(oeSelfTest):
+
+    def test_testimage_install(self):
+        """
+        Summary: Check install packages functionality for testimage/testexport.
+        Expected: 1. Import tests from a directory other than meta.
+                  2. Check install/unistall of socat.
+        Product: oe-core
+        Author: Mariano Lopez <mariano.lopez at intel.com>
+        """
+
+        features = 'INHERIT += "testexport"\n'
+        features = 'TEST_SUITES = "ping ssh selftest"\n'
+
+        # Build core-image-sato and testimage
+        bitbake('core-image-sato socat')
+        bitbake('-c testimage core-image-sato')
-- 
2.6.6




More information about the Openembedded-core mailing list