summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/cases/runtime_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oeqa/selftest/cases/runtime_test.py')
-rw-r--r--meta/lib/oeqa/selftest/cases/runtime_test.py43
1 files changed, 26 insertions, 17 deletions
diff --git a/meta/lib/oeqa/selftest/cases/runtime_test.py b/meta/lib/oeqa/selftest/cases/runtime_test.py
index 976b513727..cc4190c1d6 100644
--- a/meta/lib/oeqa/selftest/cases/runtime_test.py
+++ b/meta/lib/oeqa/selftest/cases/runtime_test.py
@@ -14,11 +14,6 @@ from oeqa.core.decorator.data import skipIfNotQemu
14 14
15class TestExport(OESelftestTestCase): 15class TestExport(OESelftestTestCase):
16 16
17 @classmethod
18 def tearDownClass(cls):
19 runCmd("rm -rf /tmp/sdk")
20 super(TestExport, cls).tearDownClass()
21
22 def test_testexport_basic(self): 17 def test_testexport_basic(self):
23 """ 18 """
24 Summary: Check basic testexport functionality with only ping test enabled. 19 Summary: Check basic testexport functionality with only ping test enabled.
@@ -95,19 +90,20 @@ class TestExport(OESelftestTestCase):
95 msg = "Couldn't find SDK tarball: %s" % tarball_path 90 msg = "Couldn't find SDK tarball: %s" % tarball_path
96 self.assertEqual(os.path.isfile(tarball_path), True, msg) 91 self.assertEqual(os.path.isfile(tarball_path), True, msg)
97 92
98 # Extract SDK and run tar from SDK 93 with tempfile.TemporaryDirectory() as tmpdirname:
99 result = runCmd("%s -y -d /tmp/sdk" % tarball_path) 94 # Extract SDK and run tar from SDK
100 self.assertEqual(0, result.status, "Couldn't extract SDK") 95 result = runCmd("%s -y -d %s" % (tarball_path, tmpdirname))
96 self.assertEqual(0, result.status, "Couldn't extract SDK")
101 97
102 env_script = result.output.split()[-1] 98 env_script = result.output.split()[-1]
103 result = runCmd(". %s; which tar" % env_script, shell=True) 99 result = runCmd(". %s; which tar" % env_script, shell=True)
104 self.assertEqual(0, result.status, "Couldn't setup SDK environment") 100 self.assertEqual(0, result.status, "Couldn't setup SDK environment")
105 is_sdk_tar = True if "/tmp/sdk" in result.output else False 101 is_sdk_tar = True if tmpdirname in result.output else False
106 self.assertTrue(is_sdk_tar, "Couldn't setup SDK environment") 102 self.assertTrue(is_sdk_tar, "Couldn't setup SDK environment")
107 103
108 tar_sdk = result.output 104 tar_sdk = result.output
109 result = runCmd("%s --version" % tar_sdk) 105 result = runCmd("%s --version" % tar_sdk)
110 self.assertEqual(0, result.status, "Couldn't run tar from SDK") 106 self.assertEqual(0, result.status, "Couldn't run tar from SDK")
111 107
112 108
113class TestImage(OESelftestTestCase): 109class TestImage(OESelftestTestCase):
@@ -179,12 +175,24 @@ class TestImage(OESelftestTestCase):
179 if "DISPLAY" not in os.environ: 175 if "DISPLAY" not in os.environ:
180 self.skipTest("virgl gtk test must be run inside a X session") 176 self.skipTest("virgl gtk test must be run inside a X session")
181 distro = oe.lsb.distro_identifier() 177 distro = oe.lsb.distro_identifier()
178 if distro and distro.startswith('almalinux'):
179 self.skipTest('virgl isn\'t working with Alma Linux')
180 if distro and distro.startswith('rocky'):
181 self.skipTest('virgl isn\'t working with Rocky Linux')
182 if distro and distro == 'debian-8': 182 if distro and distro == 'debian-8':
183 self.skipTest('virgl isn\'t working with Debian 8') 183 self.skipTest('virgl isn\'t working with Debian 8')
184 if distro and distro == 'centos-7': 184 if distro and distro == 'centos-7':
185 self.skipTest('virgl isn\'t working with Centos 7') 185 self.skipTest('virgl isn\'t working with Centos 7')
186 if distro and distro == 'centos-8':
187 self.skipTest('virgl isn\'t working with Centos 8')
188 if distro and distro.startswith('fedora'):
189 self.skipTest('virgl isn\'t working with Fedora')
186 if distro and distro == 'opensuseleap-15.0': 190 if distro and distro == 'opensuseleap-15.0':
187 self.skipTest('virgl isn\'t working with Opensuse 15.0') 191 self.skipTest('virgl isn\'t working with Opensuse 15.0')
192 if distro and distro == 'ubuntu-22.04':
193 self.skipTest('virgl isn\'t working with Ubuntu 22.04')
194 if distro and distro == 'ubuntu-22.10':
195 self.skipTest('virgl isn\'t working with Ubuntu 22.10')
188 196
189 qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') 197 qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native')
190 sdl_packageconfig = get_bb_var('PACKAGECONFIG', 'libsdl2-native') 198 sdl_packageconfig = get_bb_var('PACKAGECONFIG', 'libsdl2-native')
@@ -220,6 +228,7 @@ class TestImage(OESelftestTestCase):
220 Author: Alexander Kanavin <alex.kanavin@gmail.com> 228 Author: Alexander Kanavin <alex.kanavin@gmail.com>
221 """ 229 """
222 import subprocess, os 230 import subprocess, os
231 self.skipTest("Crashes in mesa observed with this test on dunfell: https://bugzilla.yoctoproject.org/show_bug.cgi?id=14527")
223 try: 232 try:
224 content = os.listdir("/dev/dri") 233 content = os.listdir("/dev/dri")
225 if len([i for i in content if i.startswith('render')]) == 0: 234 if len([i for i in content if i.startswith('render')]) == 0:
@@ -227,7 +236,7 @@ class TestImage(OESelftestTestCase):
227 except FileNotFoundError: 236 except FileNotFoundError:
228 self.skipTest("/dev/dri directory does not exist; no render nodes available on this machine.") 237 self.skipTest("/dev/dri directory does not exist; no render nodes available on this machine.")
229 try: 238 try:
230 dripath = subprocess.check_output("pkg-config --variable=dridriverdir dri", shell=True) 239 dripath = subprocess.check_output("PATH=/bin:/usr/bin:$PATH pkg-config --variable=dridriverdir dri", shell=True)
231 except subprocess.CalledProcessError as e: 240 except subprocess.CalledProcessError as e:
232 self.skipTest("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.") 241 self.skipTest("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.")
233 qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') 242 qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native')