mirror of https://github.com/xemu-project/xemu.git
tests/functional: Convert simple avocado tests into standalone python tests
These test are rather simple and don't need any modifications apart from adjusting the "from avocado_qemu" line. To ease debugging, make the files executable and add a shebang line and Python '__main__' handling, too, so that these tests can now be run by executing them directly. Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240830133841.142644-13-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
1497377857
commit
cce85725f1
|
@ -1833,6 +1833,8 @@ F: hw/isa/apm.c
|
||||||
F: include/hw/isa/apm.h
|
F: include/hw/isa/apm.h
|
||||||
F: tests/unit/test-x86-topo.c
|
F: tests/unit/test-x86-topo.c
|
||||||
F: tests/qtest/test-x86-cpuid-compat.c
|
F: tests/qtest/test-x86-cpuid-compat.c
|
||||||
|
F: tests/functional/test_mem_addr_space.py
|
||||||
|
F: tests/functional/test_pc_cpu_hotplug_props.py
|
||||||
|
|
||||||
PC Chipset
|
PC Chipset
|
||||||
M: Michael S. Tsirkin <mst@redhat.com>
|
M: Michael S. Tsirkin <mst@redhat.com>
|
||||||
|
@ -1899,6 +1901,8 @@ F: include/hw/boards.h
|
||||||
F: include/hw/core/cpu.h
|
F: include/hw/core/cpu.h
|
||||||
F: include/hw/cpu/cluster.h
|
F: include/hw/cpu/cluster.h
|
||||||
F: include/sysemu/numa.h
|
F: include/sysemu/numa.h
|
||||||
|
F: tests/functional/test_cpu_queries.py
|
||||||
|
F: tests/functional/test_empty_cpu_model.py
|
||||||
F: tests/unit/test-smp-parse.c
|
F: tests/unit/test-smp-parse.c
|
||||||
T: git https://gitlab.com/ehabkost/qemu.git machine-next
|
T: git https://gitlab.com/ehabkost/qemu.git machine-next
|
||||||
|
|
||||||
|
@ -2238,6 +2242,7 @@ F: net/vhost-user.c
|
||||||
F: include/hw/virtio/
|
F: include/hw/virtio/
|
||||||
F: docs/devel/virtio*
|
F: docs/devel/virtio*
|
||||||
F: docs/devel/migration/virtio.rst
|
F: docs/devel/migration/virtio.rst
|
||||||
|
F: tests/functional/test_virtio_version.py
|
||||||
|
|
||||||
virtio-balloon
|
virtio-balloon
|
||||||
M: Michael S. Tsirkin <mst@redhat.com>
|
M: Michael S. Tsirkin <mst@redhat.com>
|
||||||
|
|
|
@ -14,6 +14,7 @@ test_timeouts = {
|
||||||
}
|
}
|
||||||
|
|
||||||
tests_generic_system = [
|
tests_generic_system = [
|
||||||
|
'empty_cpu_model',
|
||||||
]
|
]
|
||||||
|
|
||||||
tests_generic_linuxuser = [
|
tests_generic_linuxuser = [
|
||||||
|
@ -23,6 +24,10 @@ tests_generic_bsduser = [
|
||||||
]
|
]
|
||||||
|
|
||||||
tests_x86_64_system_quick = [
|
tests_x86_64_system_quick = [
|
||||||
|
'cpu_queries',
|
||||||
|
'mem_addr_space',
|
||||||
|
'pc_cpu_hotplug_props',
|
||||||
|
'virtio_version',
|
||||||
]
|
]
|
||||||
|
|
||||||
tests_x86_64_system_thorough = [
|
tests_x86_64_system_thorough = [
|
||||||
|
|
12
tests/avocado/cpu_queries.py → tests/functional/test_cpu_queries.py
Normal file → Executable file
12
tests/avocado/cpu_queries.py → tests/functional/test_cpu_queries.py
Normal file → Executable file
|
@ -1,3 +1,5 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
# Sanity check of query-cpu-* results
|
# Sanity check of query-cpu-* results
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 Red Hat, Inc.
|
# Copyright (c) 2019 Red Hat, Inc.
|
||||||
|
@ -8,7 +10,7 @@
|
||||||
# This work is licensed under the terms of the GNU GPL, version 2 or
|
# This work is licensed under the terms of the GNU GPL, version 2 or
|
||||||
# later. See the COPYING file in the top-level directory.
|
# later. See the COPYING file in the top-level directory.
|
||||||
|
|
||||||
from avocado_qemu import QemuSystemTest
|
from qemu_test import QemuSystemTest
|
||||||
|
|
||||||
class QueryCPUModelExpansion(QemuSystemTest):
|
class QueryCPUModelExpansion(QemuSystemTest):
|
||||||
"""
|
"""
|
||||||
|
@ -16,10 +18,7 @@ class QueryCPUModelExpansion(QemuSystemTest):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def test(self):
|
def test(self):
|
||||||
"""
|
self.set_machine('none')
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
:avocado: tags=machine:none
|
|
||||||
"""
|
|
||||||
self.vm.add_args('-S')
|
self.vm.add_args('-S')
|
||||||
self.vm.launch()
|
self.vm.launch()
|
||||||
|
|
||||||
|
@ -33,3 +32,6 @@ class QueryCPUModelExpansion(QemuSystemTest):
|
||||||
e = self.vm.cmd('query-cpu-model-expansion', model=model,
|
e = self.vm.cmd('query-cpu-model-expansion', model=model,
|
||||||
type='full')
|
type='full')
|
||||||
self.assertEqual(e['model']['name'], c['name'])
|
self.assertEqual(e['model']['name'], c['name'])
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
QemuSystemTest.main()
|
7
tests/avocado/empty_cpu_model.py → tests/functional/test_empty_cpu_model.py
Normal file → Executable file
7
tests/avocado/empty_cpu_model.py → tests/functional/test_empty_cpu_model.py
Normal file → Executable file
|
@ -1,3 +1,5 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
# Check for crash when using empty -cpu option
|
# Check for crash when using empty -cpu option
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 Red Hat, Inc.
|
# Copyright (c) 2019 Red Hat, Inc.
|
||||||
|
@ -7,7 +9,7 @@
|
||||||
#
|
#
|
||||||
# This work is licensed under the terms of the GNU GPL, version 2 or
|
# This work is licensed under the terms of the GNU GPL, version 2 or
|
||||||
# later. See the COPYING file in the top-level directory.
|
# later. See the COPYING file in the top-level directory.
|
||||||
from avocado_qemu import QemuSystemTest
|
from qemu_test import QemuSystemTest
|
||||||
|
|
||||||
class EmptyCPUModel(QemuSystemTest):
|
class EmptyCPUModel(QemuSystemTest):
|
||||||
def test(self):
|
def test(self):
|
||||||
|
@ -17,3 +19,6 @@ class EmptyCPUModel(QemuSystemTest):
|
||||||
self.vm.wait()
|
self.vm.wait()
|
||||||
self.assertEqual(self.vm.exitcode(), 1, "QEMU exit code should be 1")
|
self.assertEqual(self.vm.exitcode(), 1, "QEMU exit code should be 1")
|
||||||
self.assertRegex(self.vm.get_log(), r'-cpu option cannot be empty')
|
self.assertRegex(self.vm.get_log(), r'-cpu option cannot be empty')
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
QemuSystemTest.main()
|
52
tests/avocado/mem-addr-space-check.py → tests/functional/test_mem_addr_space.py
Normal file → Executable file
52
tests/avocado/mem-addr-space-check.py → tests/functional/test_mem_addr_space.py
Normal file → Executable file
|
@ -1,3 +1,5 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
# Check for crash when using memory beyond the available guest processor
|
# Check for crash when using memory beyond the available guest processor
|
||||||
# address space.
|
# address space.
|
||||||
#
|
#
|
||||||
|
@ -8,7 +10,7 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
from avocado_qemu import QemuSystemTest
|
from qemu_test import QemuSystemTest
|
||||||
import time
|
import time
|
||||||
|
|
||||||
class MemAddrCheck(QemuSystemTest):
|
class MemAddrCheck(QemuSystemTest):
|
||||||
|
@ -22,9 +24,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
# for all 32-bit cases, pci64_hole_size is 0.
|
# for all 32-bit cases, pci64_hole_size is 0.
|
||||||
def test_phybits_low_pse36(self):
|
def test_phybits_low_pse36(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
With pse36 feature ON, a processor has 36 bits of addressing. So it can
|
With pse36 feature ON, a processor has 36 bits of addressing. So it can
|
||||||
access up to a maximum of 64GiB of memory. Memory hotplug region begins
|
access up to a maximum of 64GiB of memory. Memory hotplug region begins
|
||||||
at 4 GiB boundary when "above_4g_mem_size" is 0 (this would be true when
|
at 4 GiB boundary when "above_4g_mem_size" is 0 (this would be true when
|
||||||
|
@ -52,9 +51,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_low_pae(self):
|
def test_phybits_low_pae(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
With pae feature ON, a processor has 36 bits of addressing. So it can
|
With pae feature ON, a processor has 36 bits of addressing. So it can
|
||||||
access up to a maximum of 64GiB of memory. Rest is the same as the case
|
access up to a maximum of 64GiB of memory. Rest is the same as the case
|
||||||
with pse36 above.
|
with pse36 above.
|
||||||
|
@ -72,9 +68,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_pentium_pse36(self):
|
def test_phybits_ok_pentium_pse36(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Setting maxmem to 59.5G and making sure that QEMU can start with the
|
Setting maxmem to 59.5G and making sure that QEMU can start with the
|
||||||
same options as the failing case above with pse36 cpu feature.
|
same options as the failing case above with pse36 cpu feature.
|
||||||
"""
|
"""
|
||||||
|
@ -91,9 +84,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_pentium_pae(self):
|
def test_phybits_ok_pentium_pae(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Test is same as above but now with pae cpu feature turned on.
|
Test is same as above but now with pae cpu feature turned on.
|
||||||
Setting maxmem to 59.5G and making sure that QEMU can start fine
|
Setting maxmem to 59.5G and making sure that QEMU can start fine
|
||||||
with the same options as the case above.
|
with the same options as the case above.
|
||||||
|
@ -111,9 +101,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_pentium2(self):
|
def test_phybits_ok_pentium2(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Pentium2 has 36 bits of addressing, so its same as pentium
|
Pentium2 has 36 bits of addressing, so its same as pentium
|
||||||
with pse36 ON.
|
with pse36 ON.
|
||||||
"""
|
"""
|
||||||
|
@ -130,9 +117,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_low_nonpse36(self):
|
def test_phybits_low_nonpse36(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Pentium processor has 32 bits of addressing without pse36 or pae
|
Pentium processor has 32 bits of addressing without pse36 or pae
|
||||||
so it can access physical address up to 4 GiB. Setting maxmem to
|
so it can access physical address up to 4 GiB. Setting maxmem to
|
||||||
4 GiB should make QEMU fail to start with "phys-bits too low"
|
4 GiB should make QEMU fail to start with "phys-bits too low"
|
||||||
|
@ -153,9 +137,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
# now lets test some 64-bit CPU cases.
|
# now lets test some 64-bit CPU cases.
|
||||||
def test_phybits_low_tcg_q35_70_amd(self):
|
def test_phybits_low_tcg_q35_70_amd(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
For q35 7.1 machines and above, there is a HT window that starts at
|
For q35 7.1 machines and above, there is a HT window that starts at
|
||||||
1024 GiB and ends at 1 TiB - 1. If the max GPA falls in this range,
|
1024 GiB and ends at 1 TiB - 1. If the max GPA falls in this range,
|
||||||
"above_4G" memory is adjusted to start at 1 TiB boundary for AMD cpus
|
"above_4G" memory is adjusted to start at 1 TiB boundary for AMD cpus
|
||||||
|
@ -182,9 +163,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_low_tcg_q35_71_amd(self):
|
def test_phybits_low_tcg_q35_71_amd(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
AMD_HT_START is defined to be at 1012 GiB. So for q35 machines
|
AMD_HT_START is defined to be at 1012 GiB. So for q35 machines
|
||||||
version > 7.0 and AMD cpus, instead of 1024 GiB limit for 40 bit
|
version > 7.0 and AMD cpus, instead of 1024 GiB limit for 40 bit
|
||||||
processor address space, it has to be 1012 GiB , that is 12 GiB
|
processor address space, it has to be 1012 GiB , that is 12 GiB
|
||||||
|
@ -205,9 +183,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_tcg_q35_70_amd(self):
|
def test_phybits_ok_tcg_q35_70_amd(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Same as q35-7.0 AMD case except that here we check that QEMU can
|
Same as q35-7.0 AMD case except that here we check that QEMU can
|
||||||
successfully start when maxmem is < 988G.
|
successfully start when maxmem is < 988G.
|
||||||
"""
|
"""
|
||||||
|
@ -224,9 +199,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_tcg_q35_71_amd(self):
|
def test_phybits_ok_tcg_q35_71_amd(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Same as q35-7.1 AMD case except that here we check that QEMU can
|
Same as q35-7.1 AMD case except that here we check that QEMU can
|
||||||
successfully start when maxmem is < 976G.
|
successfully start when maxmem is < 976G.
|
||||||
"""
|
"""
|
||||||
|
@ -243,9 +215,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_tcg_q35_71_intel(self):
|
def test_phybits_ok_tcg_q35_71_intel(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Same parameters as test_phybits_low_tcg_q35_71_amd() but use
|
Same parameters as test_phybits_low_tcg_q35_71_amd() but use
|
||||||
Intel cpu instead. QEMU should start fine in this case as
|
Intel cpu instead. QEMU should start fine in this case as
|
||||||
"above_4G" memory starts at 4G.
|
"above_4G" memory starts at 4G.
|
||||||
|
@ -264,9 +233,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_low_tcg_q35_71_amd_41bits(self):
|
def test_phybits_low_tcg_q35_71_amd_41bits(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
AMD processor with 41 bits. Max cpu hw address = 2 TiB.
|
AMD processor with 41 bits. Max cpu hw address = 2 TiB.
|
||||||
By setting maxram above 1012 GiB - 32 GiB - 4 GiB = 976 GiB, we can
|
By setting maxram above 1012 GiB - 32 GiB - 4 GiB = 976 GiB, we can
|
||||||
force "above_4G" memory to start at 1 TiB for q35-7.1 machines
|
force "above_4G" memory to start at 1 TiB for q35-7.1 machines
|
||||||
|
@ -291,9 +257,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_tcg_q35_71_amd_41bits(self):
|
def test_phybits_ok_tcg_q35_71_amd_41bits(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
AMD processor with 41 bits. Max cpu hw address = 2 TiB.
|
AMD processor with 41 bits. Max cpu hw address = 2 TiB.
|
||||||
Same as above but by setting maxram between 976 GiB and 992 Gib,
|
Same as above but by setting maxram between 976 GiB and 992 Gib,
|
||||||
QEMU should start fine.
|
QEMU should start fine.
|
||||||
|
@ -312,9 +275,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_low_tcg_q35_intel_cxl(self):
|
def test_phybits_low_tcg_q35_intel_cxl(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
cxl memory window starts after memory device range. Here, we use 1 GiB
|
cxl memory window starts after memory device range. Here, we use 1 GiB
|
||||||
of cxl window memory. 4G_mem end aligns at 4G. pci64_hole is 32 GiB and
|
of cxl window memory. 4G_mem end aligns at 4G. pci64_hole is 32 GiB and
|
||||||
starts after the cxl memory window.
|
starts after the cxl memory window.
|
||||||
|
@ -335,9 +295,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
|
|
||||||
def test_phybits_ok_tcg_q35_intel_cxl(self):
|
def test_phybits_ok_tcg_q35_intel_cxl(self):
|
||||||
"""
|
"""
|
||||||
:avocado: tags=machine:q35
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
|
|
||||||
Same as above but here we do not reserve any cxl memory window. Hence,
|
Same as above but here we do not reserve any cxl memory window. Hence,
|
||||||
with the exact same parameters as above, QEMU should start fine even
|
with the exact same parameters as above, QEMU should start fine even
|
||||||
with cxl enabled.
|
with cxl enabled.
|
||||||
|
@ -352,3 +309,6 @@ class MemAddrCheck(QemuSystemTest):
|
||||||
time.sleep(self.DELAY_Q35_BOOT_SEQUENCE)
|
time.sleep(self.DELAY_Q35_BOOT_SEQUENCE)
|
||||||
self.vm.shutdown()
|
self.vm.shutdown()
|
||||||
self.assertNotRegex(self.vm.get_log(), r'phys-bits too low')
|
self.assertNotRegex(self.vm.get_log(), r'phys-bits too low')
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
QemuSystemTest.main()
|
11
tests/avocado/pc_cpu_hotplug_props.py → tests/functional/test_pc_cpu_hotplug_props.py
Normal file → Executable file
11
tests/avocado/pc_cpu_hotplug_props.py → tests/functional/test_pc_cpu_hotplug_props.py
Normal file → Executable file
|
@ -1,3 +1,4 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
#
|
#
|
||||||
# Ensure CPU die-id can be omitted on -device
|
# Ensure CPU die-id can be omitted on -device
|
||||||
#
|
#
|
||||||
|
@ -20,16 +21,16 @@
|
||||||
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
from avocado_qemu import QemuSystemTest
|
from qemu_test import QemuSystemTest
|
||||||
|
|
||||||
class OmittedCPUProps(QemuSystemTest):
|
class OmittedCPUProps(QemuSystemTest):
|
||||||
"""
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
:avocado: tags=cpu:qemu64
|
|
||||||
"""
|
|
||||||
def test_no_die_id(self):
|
def test_no_die_id(self):
|
||||||
self.vm.add_args('-nodefaults', '-S')
|
self.vm.add_args('-nodefaults', '-S')
|
||||||
self.vm.add_args('-smp', '1,sockets=2,cores=2,threads=2,maxcpus=8')
|
self.vm.add_args('-smp', '1,sockets=2,cores=2,threads=2,maxcpus=8')
|
||||||
self.vm.add_args('-device', 'qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0')
|
self.vm.add_args('-device', 'qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0')
|
||||||
self.vm.launch()
|
self.vm.launch()
|
||||||
self.assertEqual(len(self.vm.cmd('query-cpus-fast')), 2)
|
self.assertEqual(len(self.vm.cmd('query-cpus-fast')), 2)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
QemuSystemTest.main()
|
8
tests/avocado/virtio_version.py → tests/functional/test_virtio_version.py
Normal file → Executable file
8
tests/avocado/virtio_version.py → tests/functional/test_virtio_version.py
Normal file → Executable file
|
@ -1,3 +1,4 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
"""
|
"""
|
||||||
Check compatibility of virtio device types
|
Check compatibility of virtio device types
|
||||||
"""
|
"""
|
||||||
|
@ -12,7 +13,7 @@ import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from qemu.machine import QEMUMachine
|
from qemu.machine import QEMUMachine
|
||||||
from avocado_qemu import QemuSystemTest
|
from qemu_test import QemuSystemTest
|
||||||
|
|
||||||
# Virtio Device IDs:
|
# Virtio Device IDs:
|
||||||
VIRTIO_NET = 1
|
VIRTIO_NET = 1
|
||||||
|
@ -60,8 +61,6 @@ class VirtioVersionCheck(QemuSystemTest):
|
||||||
Check if virtio-version-specific device types result in the
|
Check if virtio-version-specific device types result in the
|
||||||
same device tree created by `disable-modern` and
|
same device tree created by `disable-modern` and
|
||||||
`disable-legacy`.
|
`disable-legacy`.
|
||||||
|
|
||||||
:avocado: tags=arch:x86_64
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# just in case there are failures, show larger diff:
|
# just in case there are failures, show larger diff:
|
||||||
|
@ -173,3 +172,6 @@ class VirtioVersionCheck(QemuSystemTest):
|
||||||
self.check_modern_only('virtio-mouse-pci', VIRTIO_INPUT)
|
self.check_modern_only('virtio-mouse-pci', VIRTIO_INPUT)
|
||||||
self.check_modern_only('virtio-tablet-pci', VIRTIO_INPUT)
|
self.check_modern_only('virtio-tablet-pci', VIRTIO_INPUT)
|
||||||
self.check_modern_only('virtio-keyboard-pci', VIRTIO_INPUT)
|
self.check_modern_only('virtio-keyboard-pci', VIRTIO_INPUT)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
QemuSystemTest.main()
|
Loading…
Reference in New Issue