diff options
-rw-r--r-- | meta/lib/oeqa/selftest/cases/runqemu.py | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/meta/lib/oeqa/selftest/cases/runqemu.py b/meta/lib/oeqa/selftest/cases/runqemu.py index c1d277a095..58a4526df6 100644 --- a/meta/lib/oeqa/selftest/cases/runqemu.py +++ b/meta/lib/oeqa/selftest/cases/runqemu.py | |||
@@ -9,6 +9,7 @@ import tempfile | |||
9 | import time | 9 | import time |
10 | import oe.types | 10 | import oe.types |
11 | from oeqa.core.decorator import OETestTag | 11 | from oeqa.core.decorator import OETestTag |
12 | from oeqa.core.decorator.data import skipIfNotArch, skipIfNotMachine | ||
12 | from oeqa.selftest.case import OESelftestTestCase | 13 | from oeqa.selftest.case import OESelftestTestCase |
13 | from oeqa.utils.commands import bitbake, runqemu, get_bb_var, runCmd | 14 | from oeqa.utils.commands import bitbake, runqemu, get_bb_var, runCmd |
14 | 15 | ||
@@ -22,23 +23,25 @@ class RunqemuTests(OESelftestTestCase): | |||
22 | def setUpLocal(self): | 23 | def setUpLocal(self): |
23 | super(RunqemuTests, self).setUpLocal() | 24 | super(RunqemuTests, self).setUpLocal() |
24 | self.recipe = 'core-image-minimal' | 25 | self.recipe = 'core-image-minimal' |
25 | self.machine = 'qemux86-64' | 26 | self.machine = self.td['MACHINE'] |
26 | self.fstypes = "ext4 iso hddimg wic.vmdk wic.qcow2 wic.vdi" | 27 | |
27 | self.cmd_common = "runqemu nographic" | 28 | self.fstypes = "ext4" |
29 | if self.td["HOST_ARCH"] in ('i586', 'i686', 'x86_64'): | ||
30 | self.fstypes += " iso hddimg" | ||
31 | if self.machine == "qemux86-64": | ||
32 | self.fstypes += " wic.vmdk wic.qcow2 wic.vdi" | ||
28 | 33 | ||
29 | kvm = oe.types.qemu_use_kvm(get_bb_var('QEMU_USE_KVM'), 'x86_64') | 34 | self.cmd_common = "runqemu nographic" |
35 | kvm = oe.types.qemu_use_kvm(get_bb_var('QEMU_USE_KVM'), self.td["TARGET_ARCH"]) | ||
30 | if kvm: | 36 | if kvm: |
31 | self.cmd_common += " kvm" | 37 | self.cmd_common += " kvm" |
32 | 38 | ||
33 | self.write_config( | 39 | self.write_config( |
34 | """ | 40 | """ |
35 | MACHINE = "%s" | ||
36 | IMAGE_FSTYPES = "%s" | 41 | IMAGE_FSTYPES = "%s" |
37 | # 10 means 1 second | 42 | # 10 means 1 second |
38 | SYSLINUX_TIMEOUT = "10" | 43 | SYSLINUX_TIMEOUT = "10" |
39 | """ | 44 | """ % self.fstypes) |
40 | % (self.machine, self.fstypes) | ||
41 | ) | ||
42 | 45 | ||
43 | if not RunqemuTests.image_is_ready: | 46 | if not RunqemuTests.image_is_ready: |
44 | RunqemuTests.deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE') | 47 | RunqemuTests.deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE') |
@@ -59,6 +62,7 @@ SYSLINUX_TIMEOUT = "10" | |||
59 | with open(qemu.qemurunnerlog) as f: | 62 | with open(qemu.qemurunnerlog) as f: |
60 | self.assertIn('rootfs.ext4', f.read(), "Failed: %s" % cmd) | 63 | self.assertIn('rootfs.ext4', f.read(), "Failed: %s" % cmd) |
61 | 64 | ||
65 | @skipIfNotArch(['i586', 'i686', 'x86_64']) | ||
62 | def test_boot_machine_iso(self): | 66 | def test_boot_machine_iso(self): |
63 | """Test runqemu machine iso""" | 67 | """Test runqemu machine iso""" |
64 | cmd = "%s %s iso" % (self.cmd_common, self.machine) | 68 | cmd = "%s %s iso" % (self.cmd_common, self.machine) |
@@ -73,7 +77,8 @@ SYSLINUX_TIMEOUT = "10" | |||
73 | with open(qemu.qemurunnerlog) as f: | 77 | with open(qemu.qemurunnerlog) as f: |
74 | self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read())) | 78 | self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read())) |
75 | 79 | ||
76 | 80 | # https://bugzilla.yoctoproject.org/show_bug.cgi?id=14963 | |
81 | @skipIfNotMachine("qemux86-64", "tests are qemux86-64 specific currently") | ||
77 | def test_boot_recipe_image_vmdk(self): | 82 | def test_boot_recipe_image_vmdk(self): |
78 | """Test runqemu recipe-image vmdk""" | 83 | """Test runqemu recipe-image vmdk""" |
79 | cmd = "%s %s wic.vmdk" % (self.cmd_common, self.recipe) | 84 | cmd = "%s %s wic.vmdk" % (self.cmd_common, self.recipe) |
@@ -81,6 +86,7 @@ SYSLINUX_TIMEOUT = "10" | |||
81 | with open(qemu.qemurunnerlog) as f: | 86 | with open(qemu.qemurunnerlog) as f: |
82 | self.assertIn('format=vmdk', f.read(), "Failed: %s" % cmd) | 87 | self.assertIn('format=vmdk', f.read(), "Failed: %s" % cmd) |
83 | 88 | ||
89 | @skipIfNotMachine("qemux86-64", "tests are qemux86-64 specific currently") | ||
84 | def test_boot_recipe_image_vdi(self): | 90 | def test_boot_recipe_image_vdi(self): |
85 | """Test runqemu recipe-image vdi""" | 91 | """Test runqemu recipe-image vdi""" |
86 | cmd = "%s %s wic.vdi" % (self.cmd_common, self.recipe) | 92 | cmd = "%s %s wic.vdi" % (self.cmd_common, self.recipe) |
@@ -96,6 +102,7 @@ SYSLINUX_TIMEOUT = "10" | |||
96 | self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read())) | 102 | self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read())) |
97 | 103 | ||
98 | 104 | ||
105 | @skipIfNotArch(['i586', 'i686', 'x86_64']) | ||
99 | def test_boot_deploy_hddimg(self): | 106 | def test_boot_deploy_hddimg(self): |
100 | """Test runqemu deploy_dir_image hddimg""" | 107 | """Test runqemu deploy_dir_image hddimg""" |
101 | cmd = "%s %s hddimg" % (self.cmd_common, self.deploy_dir_image) | 108 | cmd = "%s %s hddimg" % (self.cmd_common, self.deploy_dir_image) |
@@ -110,6 +117,7 @@ SYSLINUX_TIMEOUT = "10" | |||
110 | with open(qemu.qemurunnerlog) as f: | 117 | with open(qemu.qemurunnerlog) as f: |
111 | self.assertIn(' -netdev user', f.read(), "Failed: %s" % cmd) | 118 | self.assertIn(' -netdev user', f.read(), "Failed: %s" % cmd) |
112 | 119 | ||
120 | @skipIfNotMachine("qemux86-64", "tests are qemux86-64 specific currently") | ||
113 | def test_boot_machine_slirp_qcow2(self): | 121 | def test_boot_machine_slirp_qcow2(self): |
114 | """Test runqemu machine slirp qcow2""" | 122 | """Test runqemu machine slirp qcow2""" |
115 | cmd = "%s slirp wic.qcow2 %s" % (self.cmd_common, self.machine) | 123 | cmd = "%s slirp wic.qcow2 %s" % (self.cmd_common, self.machine) |