blob: 7a2a6fe7c8fee81c68727979f1d22e0d21180c3c [file] [log] [blame]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05001import os
2import shutil
3import subprocess
4
5from oeqa.oetest import oeSDKExtTest
6from oeqa.utils.httpserver import HTTPService
7
8class SdkUpdateTest(oeSDKExtTest):
9
10 @classmethod
11 def setUpClass(self):
12 self.publish_dir = os.path.join(self.tc.sdktestdir, 'esdk_publish')
13 if os.path.exists(self.publish_dir):
14 shutil.rmtree(self.publish_dir)
15 os.mkdir(self.publish_dir)
16
17 tcname_new = self.tc.d.expand(
18 "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}-new.sh")
19 if not os.path.exists(tcname_new):
20 tcname_new = self.tc.tcname
21
22 cmd = 'oe-publish-sdk %s %s' % (tcname_new, self.publish_dir)
23 subprocess.check_output(cmd, shell=True)
24
25 self.http_service = HTTPService(self.publish_dir)
26 self.http_service.start()
27
28 self.http_url = "http://127.0.0.1:%d" % self.http_service.port
29
30 def test_sdk_update_http(self):
31 output = self._run("devtool sdk-update \"%s\"" % self.http_url)
32
33 def test_sdk_update_local(self):
34 output = self._run("devtool sdk-update \"%s\"" % self.publish_dir)
35
36 @classmethod
37 def tearDownClass(self):
38 self.http_service.stop()
39 shutil.rmtree(self.publish_dir)