[oe-commits] [openembedded-core] 94/103: oeqa/sdkext: Add sdk_update.SDKUpdateTest class.

git at git.openembedded.org git at git.openembedded.org
Sun Feb 28 11:36:34 UTC 2016


rpurdie pushed a commit to branch master
in repository openembedded-core.

commit be7f5036a7c86fe70d43526df529bc467a9cf7d9
Author: Aníbal Limón <limon.anibal at gmail.com>
AuthorDate: Sun Feb 21 14:40:20 2016 -0600

    oeqa/sdkext: Add sdk_update.SDKUpdateTest class.
    
    The SDKUpdateTest class test devtool sdk-update mechanism inside
    eSDK.
    
    The SDKUpdateTest class search for new sdk if not found uses
    the main one then it publish the eSDK into known folder
    inside work and it starts a web server for serve the eSDK.
    
    Finally it executes sdk-update over http, the local test is
    commented due to bug [1].
    
    [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=9043
    
    [YOCTO #9089]
    
    Signed-off-by: Aníbal Limón <limon.anibal at gmail.com>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/lib/oeqa/sdkext/sdk_update.py | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/meta/lib/oeqa/sdkext/sdk_update.py b/meta/lib/oeqa/sdkext/sdk_update.py
new file mode 100644
index 0000000..16f5b10
--- /dev/null
+++ b/meta/lib/oeqa/sdkext/sdk_update.py
@@ -0,0 +1,39 @@
+import os
+import shutil
+import subprocess
+
+from oeqa.oetest import oeSDKExtTest
+from oeqa.utils.httpserver import HTTPService
+
+class SdkUpdateTest(oeSDKExtTest):
+
+    @classmethod
+    def setUpClass(self):
+        self.publish_dir = os.path.join(self.tc.sdktestdir, 'esdk_publish')
+        if os.path.exists(self.publish_dir):
+            shutil.rmtree(self.publish_dir)
+        os.mkdir(self.publish_dir)
+
+        tcname_new = self.tc.d.expand(
+            "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}-new.sh")
+        if not os.path.exists(tcname_new):
+            tcname_new = self.tc.tcname
+
+        cmd = 'oe-publish-sdk %s %s' % (tcname_new, self.publish_dir)
+        subprocess.check_output(cmd, shell=True)
+
+        self.http_service = HTTPService(self.publish_dir)
+        self.http_service.start()
+
+        self.http_url = "http://127.0.0.1:%d" % self.http_service.port
+
+    def test_sdk_update_http(self):
+        output = self._run("devtool sdk-update \"%s\"" % self.http_url)
+
+#    def test_sdk_update_local(self):
+#        output = self._run("devtool sdk-update \"%s\"" % self.publish_dir)
+
+    @classmethod
+    def tearDownClass(self):
+        self.http_service.stop()
+        shutil.rmtree(self.publish_dir)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list