diff options
Diffstat (limited to 'meta/lib/oeqa/selftest/cases/runtime_test.py')
-rw-r--r-- | meta/lib/oeqa/selftest/cases/runtime_test.py | 43 |
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 | ||
15 | class TestExport(OESelftestTestCase): | 15 | class 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 | ||
113 | class TestImage(OESelftestTestCase): | 109 | class 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') |