diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2025-08-27 19:11:08 +1000 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2025-08-27 19:11:08 +1000 |
commit | 5fc03d4e28258fdf6a926a59c6b5e1edc23e6d5d (patch) | |
tree | 9c17fa4348850e26feff0f464f499077907b0aee /tests | |
parent | e771ba98de25c9f43959f79fc7099cf7fbba44cc (diff) | |
parent | 0ac3c314130eff8e3ea9860fe3202908a7746225 (diff) | |
download | qemu-5fc03d4e28258fdf6a926a59c6b5e1edc23e6d5d.zip qemu-5fc03d4e28258fdf6a926a59c6b5e1edc23e6d5d.tar.gz qemu-5fc03d4e28258fdf6a926a59c6b5e1edc23e6d5d.tar.bz2 |
Merge tag 'pull-request-2025-08-27' of https://gitlab.com/thuth/qemu into staging
* Add v10.2 compat machines
* Move functional tests to target specific subfolders
* Fix some issues in functional tests
# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCgAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmiuuP0RHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbVMEA//egQiaWsMquQan7D8RWt7TkD2deY2L5Dx
# D/pkO3xGA1hxCzD37ptGfFw2NO6cVpH8cjOevrJYUwW1Yefbsf8HqUlC7PrqDjTw
# +ztyIPSl7ny3xQxif+1Oc2rmt6MCNCQTw9CLdB0k3D1jr7aY0Z20JrxFrQmExhOe
# oSqiILYwiZGfNI4jiQSBYtBVpKrqwCQ+gEs6HyqayQOczaYynHvt8Gqwyp/DpKpY
# bfBcqbREK8zYTMMRYl5d/qcJpWgVtCj5OeqDQyhLMSgNt9fGmdKMzjK5Wzgl18gX
# 8A9tFK8KreXXLu1UfJWe+/kFAHMWhEWMkOv81Z/gqB4Zmp/eMioKlGDwVBU//PPm
# VFigfAPtqBqvOiuJo673ze2AOWMGROtLyZ9nyfv8/MZcQqoYLtvfZMUa08/M74/w
# TRSsBMGKk3H2O/prrXjFHK8q0aRXB2Ld3to0TyZOwlB17rhaD5jq/P8ge2UgGRGb
# fSghUKGmBAHueZyUdlCer+TEzH8ySl5zmotfiDeQfIYkwQ6rWUQZfehLxoycuHvr
# Kl3ZU6RD7fD2kCzRbvUOsyg0H3pihVvzcCL5BMxbGQ1sqZ+WI1dWPoOaUrZ9EvOg
# lQtsNMiu2i7bVqaJ27zNR4V3nwU77f/f+6zJwyXtD+6Wb+bFcQu5aYfgjqOr/Tlv
# zEVoqp5pRU4=
# =pSMT
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 27 Aug 2025 05:51:25 PM AEST
# gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg: issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [unknown]
# gpg: aka "Thomas Huth <thuth@redhat.com>" [unknown]
# gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# gpg: aka "Thomas Huth <huth@tuxfamily.org>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5
* tag 'pull-request-2025-08-27' of https://gitlab.com/thuth/qemu: (31 commits)
tests/functional: Mark main in QemuBaseTest class as a static method
MAINTAINERS: Adjust wildcards for the migration, multiprocess and replay tests
tests/functional: Move the generic tests to a subfolder
tests/functional: Move xtensa tests into target-specific folder
tests/functional: Move x86_64 tests into target-specific folder
tests/functional: Move sparc/sparc64 tests into target-specific folders
tests/functional: Move sh4/sh4eb tests into target-specific folders
tests/functional: Move s390x tests into target-specific folders
tests/functional: Move rx test into target-specific folders
tests/functional: Move riscv32/riscv64 tests into target-specific folders
tests/functional: Move ppc/ppc64 tests into target-specific folders
tests/functional: Move or1k tests into target-specific folders
tests/functional: Move mips tests into target-specific folders
tests/functional: Move microblaze tests into architecture specific folder
tests/functional: Move m68k tests into architecture specific folder
tests/functional: Move loongarch64 tests into architecture specific folder
tests/functional: Move i386 tests into architecture specific folder
tests/functional: Move hppa tests into architecture specific folder
tests/functional: Move avr tests into architecture specific folder
tests/functional: Move arm tests into architecture specific folder
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/functional/aarch64/meson.build | 48 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_aspeed_ast2700.py (renamed from tests/functional/test_aarch64_aspeed_ast2700.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_aspeed_ast2700fc.py (renamed from tests/functional/test_aarch64_aspeed_ast2700fc.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_device_passthrough.py (renamed from tests/functional/test_aarch64_device_passthrough.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_hotplug_pci.py (renamed from tests/functional/test_aarch64_hotplug_pci.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_imx8mp_evk.py (renamed from tests/functional/test_aarch64_imx8mp_evk.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_kvm.py (renamed from tests/functional/test_aarch64_kvm.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_multiprocess.py | 31 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_raspi3.py (renamed from tests/functional/test_aarch64_raspi3.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_raspi4.py (renamed from tests/functional/test_aarch64_raspi4.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_replay.py (renamed from tests/functional/test_aarch64_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_reverse_debug.py (renamed from tests/functional/test_aarch64_reverse_debug.py) | 4 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_rme_sbsaref.py (renamed from tests/functional/test_aarch64_rme_sbsaref.py) | 2 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_rme_virt.py (renamed from tests/functional/test_aarch64_rme_virt.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_sbsaref.py (renamed from tests/functional/test_aarch64_sbsaref.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_sbsaref_alpine.py (renamed from tests/functional/test_aarch64_sbsaref_alpine.py) | 2 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_sbsaref_freebsd.py (renamed from tests/functional/test_aarch64_sbsaref_freebsd.py) | 2 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_smmu.py (renamed from tests/functional/test_aarch64_smmu.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_tcg_plugins.py (renamed from tests/functional/test_aarch64_tcg_plugins.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_tuxrun.py (renamed from tests/functional/test_aarch64_tuxrun.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_virt.py (renamed from tests/functional/test_aarch64_virt.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_virt_gpu.py (renamed from tests/functional/test_aarch64_virt_gpu.py) | 2 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_xen.py (renamed from tests/functional/test_aarch64_xen.py) | 0 | ||||
-rwxr-xr-x | tests/functional/aarch64/test_xlnx_versal.py (renamed from tests/functional/test_aarch64_xlnx_versal.py) | 0 | ||||
-rw-r--r-- | tests/functional/alpha/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/alpha/test_clipper.py (renamed from tests/functional/test_alpha_clipper.py) | 0 | ||||
-rwxr-xr-x | tests/functional/alpha/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/alpha/test_replay.py (renamed from tests/functional/test_alpha_replay.py) | 0 | ||||
-rw-r--r-- | tests/functional/arm/meson.build | 62 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_ast1030.py (renamed from tests/functional/test_arm_aspeed_ast1030.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_ast2500.py (renamed from tests/functional/test_arm_aspeed_ast2500.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_ast2600.py (renamed from tests/functional/test_arm_aspeed_ast2600.py) | 0 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/functional/arm/test_aspeed_bletchley.py (renamed from tests/functional/test_arm_aspeed_bletchley.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_catalina.py (renamed from tests/functional/test_arm_aspeed_catalina.py) | 0 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/functional/arm/test_aspeed_gb200nvl_bmc.py (renamed from tests/functional/test_arm_aspeed_gb200nvl_bmc.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_palmetto.py (renamed from tests/functional/test_arm_aspeed_palmetto.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_rainier.py (renamed from tests/functional/test_arm_aspeed_rainier.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_aspeed_romulus.py (renamed from tests/functional/test_arm_aspeed_romulus.py) | 0 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/functional/arm/test_aspeed_witherspoon.py (renamed from tests/functional/test_arm_aspeed_witherspoon.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_bflt.py (renamed from tests/functional/test_arm_bflt.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_bpim2u.py (renamed from tests/functional/test_arm_bpim2u.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_canona1100.py (renamed from tests/functional/test_arm_canona1100.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_collie.py (renamed from tests/functional/test_arm_collie.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_cubieboard.py (renamed from tests/functional/test_arm_cubieboard.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_emcraft_sf2.py (renamed from tests/functional/test_arm_emcraft_sf2.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_integratorcp.py (renamed from tests/functional/test_arm_integratorcp.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_max78000fthr.py (renamed from tests/functional/test_arm_max78000fthr.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_microbit.py (renamed from tests/functional/test_arm_microbit.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/arm/test_orangepi.py (renamed from tests/functional/test_arm_orangepi.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_quanta_gsj.py (renamed from tests/functional/test_arm_quanta_gsj.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_raspi2.py (renamed from tests/functional/test_arm_raspi2.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_realview.py (renamed from tests/functional/test_arm_realview.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_replay.py (renamed from tests/functional/test_arm_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_smdkc210.py (renamed from tests/functional/test_arm_smdkc210.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_stellaris.py (renamed from tests/functional/test_arm_stellaris.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_sx1.py (renamed from tests/functional/test_arm_sx1.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_tuxrun.py (renamed from tests/functional/test_arm_tuxrun.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_vexpress.py (renamed from tests/functional/test_arm_vexpress.py) | 0 | ||||
-rwxr-xr-x | tests/functional/arm/test_virt.py (renamed from tests/functional/test_arm_virt.py) | 0 | ||||
-rw-r--r-- | tests/functional/avr/meson.build | 6 | ||||
-rwxr-xr-x | tests/functional/avr/test_mega2560.py (renamed from tests/functional/test_avr_mega2560.py) | 0 | ||||
-rwxr-xr-x | tests/functional/avr/test_uno.py (renamed from tests/functional/test_avr_uno.py) | 0 | ||||
-rw-r--r-- | tests/functional/generic/meson.build | 14 | ||||
-rwxr-xr-x | tests/functional/generic/test_empty_cpu_model.py (renamed from tests/functional/test_empty_cpu_model.py) | 0 | ||||
-rwxr-xr-x | tests/functional/generic/test_info_usernet.py (renamed from tests/functional/test_info_usernet.py) | 0 | ||||
-rwxr-xr-x | tests/functional/generic/test_version.py (renamed from tests/functional/test_version.py) | 0 | ||||
-rwxr-xr-x | tests/functional/generic/test_vnc.py (renamed from tests/functional/test_vnc.py) | 0 | ||||
-rw-r--r-- | tests/functional/hppa/meson.build | 5 | ||||
-rwxr-xr-x | tests/functional/hppa/test_seabios.py (renamed from tests/functional/test_hppa_seabios.py) | 0 | ||||
-rw-r--r-- | tests/functional/i386/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/i386/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/i386/test_replay.py (renamed from tests/functional/test_i386_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/i386/test_tuxrun.py (renamed from tests/functional/test_i386_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/loongarch64/meson.build | 5 | ||||
-rwxr-xr-x | tests/functional/loongarch64/test_virt.py (renamed from tests/functional/test_loongarch64_virt.py) | 0 | ||||
-rw-r--r-- | tests/functional/m68k/meson.build | 9 | ||||
-rwxr-xr-x | tests/functional/m68k/test_mcf5208evb.py (renamed from tests/functional/test_m68k_mcf5208evb.py) | 0 | ||||
-rwxr-xr-x | tests/functional/m68k/test_nextcube.py (renamed from tests/functional/test_m68k_nextcube.py) | 0 | ||||
-rwxr-xr-x | tests/functional/m68k/test_q800.py (renamed from tests/functional/test_m68k_q800.py) | 0 | ||||
-rwxr-xr-x | tests/functional/m68k/test_replay.py (renamed from tests/functional/test_m68k_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/m68k/test_tuxrun.py (renamed from tests/functional/test_m68k_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/meson.build | 382 | ||||
-rw-r--r-- | tests/functional/microblaze/meson.build | 6 | ||||
-rwxr-xr-x | tests/functional/microblaze/test_replay.py (renamed from tests/functional/test_microblaze_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/microblaze/test_s3adsp1800.py (renamed from tests/functional/test_microblaze_s3adsp1800.py) | 0 | ||||
-rw-r--r-- | tests/functional/microblazeel/meson.build | 5 | ||||
-rwxr-xr-x | tests/functional/microblazeel/test_s3adsp1800.py (renamed from tests/functional/test_microblazeel_s3adsp1800.py) | 2 | ||||
-rw-r--r--[-rwxr-xr-x] | tests/functional/migration.py (renamed from tests/functional/test_migration.py) | 35 | ||||
-rw-r--r-- | tests/functional/mips/meson.build | 11 | ||||
-rwxr-xr-x | tests/functional/mips/test_malta.py (renamed from tests/functional/test_mips_malta.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mips/test_replay.py (renamed from tests/functional/test_mips_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mips/test_tuxrun.py (renamed from tests/functional/test_mips_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/mips64/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/mips64/test_malta.py (renamed from tests/functional/test_mips64_malta.py) | 2 | ||||
-rwxr-xr-x | tests/functional/mips64/test_tuxrun.py (renamed from tests/functional/test_mips64_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/mips64el/meson.build | 14 | ||||
-rwxr-xr-x | tests/functional/mips64el/test_fuloong2e.py (renamed from tests/functional/test_mips64el_fuloong2e.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mips64el/test_loongson3v.py (renamed from tests/functional/test_mips64el_loongson3v.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mips64el/test_malta.py (renamed from tests/functional/test_mips64el_malta.py) | 4 | ||||
-rwxr-xr-x | tests/functional/mips64el/test_replay.py (renamed from tests/functional/test_mips64el_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mips64el/test_tuxrun.py (renamed from tests/functional/test_mips64el_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/mipsel/meson.build | 12 | ||||
-rwxr-xr-x | tests/functional/mipsel/test_malta.py (renamed from tests/functional/test_mipsel_malta.py) | 2 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/functional/mipsel/test_replay.py (renamed from tests/functional/test_mipsel_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/mipsel/test_tuxrun.py (renamed from tests/functional/test_mipsel_tuxrun.py) | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | tests/functional/multiprocess.py (renamed from tests/functional/test_multiprocess.py) | 40 | ||||
-rw-r--r-- | tests/functional/or1k/meson.build | 6 | ||||
-rwxr-xr-x | tests/functional/or1k/test_replay.py (renamed from tests/functional/test_or1k_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/or1k/test_sim.py (renamed from tests/functional/test_or1k_sim.py) | 0 | ||||
-rw-r--r-- | tests/functional/ppc/meson.build | 22 | ||||
-rwxr-xr-x | tests/functional/ppc/test_40p.py (renamed from tests/functional/test_ppc_40p.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_74xx.py (renamed from tests/functional/test_ppc_74xx.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_amiga.py (renamed from tests/functional/test_ppc_amiga.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_bamboo.py (renamed from tests/functional/test_ppc_bamboo.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_mac.py (renamed from tests/functional/test_ppc_mac.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/ppc/test_mpc8544ds.py (renamed from tests/functional/test_ppc_mpc8544ds.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_replay.py (renamed from tests/functional/test_ppc_replay.py) | 0 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/functional/ppc/test_sam460ex.py (renamed from tests/functional/test_ppc_sam460ex.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_tuxrun.py (renamed from tests/functional/test_ppc_tuxrun.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc/test_virtex_ml507.py (renamed from tests/functional/test_ppc_virtex_ml507.py) | 0 | ||||
-rw-r--r-- | tests/functional/ppc64/meson.build | 25 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_e500.py (renamed from tests/functional/test_ppc64_e500.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_hv.py (renamed from tests/functional/test_ppc64_hv.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_mac99.py (renamed from tests/functional/test_ppc64_mac99.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_powernv.py (renamed from tests/functional/test_ppc64_powernv.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_pseries.py (renamed from tests/functional/test_ppc64_pseries.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_replay.py (renamed from tests/functional/test_ppc64_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_reverse_debug.py (renamed from tests/functional/test_ppc64_reverse_debug.py) | 0 | ||||
-rwxr-xr-x | tests/functional/ppc64/test_tuxrun.py (renamed from tests/functional/test_ppc64_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/qemu_test/ports.py | 5 | ||||
-rw-r--r-- | tests/functional/qemu_test/testcase.py | 1 | ||||
-rw-r--r-- | tests/functional/riscv32/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/riscv32/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/riscv32/test_opensbi.py | 10 | ||||
-rwxr-xr-x | tests/functional/riscv32/test_tuxrun.py (renamed from tests/functional/test_riscv32_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/riscv64/meson.build | 15 | ||||
-rwxr-xr-x | tests/functional/riscv64/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/riscv64/test_opensbi.py (renamed from tests/functional/test_riscv_opensbi.py) | 0 | ||||
-rwxr-xr-x | tests/functional/riscv64/test_sifive_u.py (renamed from tests/functional/test_riscv64_sifive_u.py) | 0 | ||||
-rwxr-xr-x | tests/functional/riscv64/test_tuxrun.py (renamed from tests/functional/test_riscv64_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/rx/meson.build | 5 | ||||
-rwxr-xr-x | tests/functional/rx/test_gdbsim.py (renamed from tests/functional/test_rx_gdbsim.py) | 0 | ||||
-rw-r--r-- | tests/functional/s390x/meson.build | 13 | ||||
-rwxr-xr-x | tests/functional/s390x/test_ccw_virtio.py (renamed from tests/functional/test_s390x_ccw_virtio.py) | 0 | ||||
-rwxr-xr-x | tests/functional/s390x/test_pxelinux.py (renamed from tests/functional/test_s390x_pxelinux.py) | 0 | ||||
-rwxr-xr-x | tests/functional/s390x/test_replay.py (renamed from tests/functional/test_s390x_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/s390x/test_topology.py (renamed from tests/functional/test_s390x_topology.py) | 0 | ||||
-rwxr-xr-x | tests/functional/s390x/test_tuxrun.py (renamed from tests/functional/test_s390x_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/sh4/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/sh4/test_r2d.py (renamed from tests/functional/test_sh4_r2d.py) | 0 | ||||
-rwxr-xr-x | tests/functional/sh4/test_tuxrun.py (renamed from tests/functional/test_sh4_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/sh4eb/meson.build | 5 | ||||
-rwxr-xr-x | tests/functional/sh4eb/test_r2d.py (renamed from tests/functional/test_sh4eb_r2d.py) | 0 | ||||
-rw-r--r-- | tests/functional/sparc/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/sparc/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/sparc/test_replay.py (renamed from tests/functional/test_sparc_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/sparc/test_sun4m.py (renamed from tests/functional/test_sparc_sun4m.py) | 0 | ||||
-rw-r--r-- | tests/functional/sparc64/meson.build | 10 | ||||
-rwxr-xr-x | tests/functional/sparc64/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/sparc64/test_sun4u.py (renamed from tests/functional/test_sparc64_sun4u.py) | 0 | ||||
-rwxr-xr-x | tests/functional/sparc64/test_tuxrun.py (renamed from tests/functional/test_sparc64_tuxrun.py) | 0 | ||||
-rw-r--r-- | tests/functional/x86_64/meson.build | 36 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_acpi_bits.py (renamed from tests/functional/test_acpi_bits.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_cpu_model_versions.py (renamed from tests/functional/test_x86_cpu_model_versions.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_cpu_queries.py (renamed from tests/functional/test_cpu_queries.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_hotplug_blk.py (renamed from tests/functional/test_x86_64_hotplug_blk.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_hotplug_cpu.py (renamed from tests/functional/test_x86_64_hotplug_cpu.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_intel_iommu.py (renamed from tests/functional/test_intel_iommu.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_kvm_xen.py (renamed from tests/functional/test_x86_64_kvm_xen.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_linux_initrd.py (renamed from tests/functional/test_linux_initrd.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_mem_addr_space.py (renamed from tests/functional/test_mem_addr_space.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_memlock.py (renamed from tests/functional/test_memlock.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_migration.py | 26 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_multiprocess.py | 31 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_netdev_ethtool.py (renamed from tests/functional/test_netdev_ethtool.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_pc_cpu_hotplug_props.py (renamed from tests/functional/test_pc_cpu_hotplug_props.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_replay.py (renamed from tests/functional/test_x86_64_replay.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_reverse_debug.py (renamed from tests/functional/test_x86_64_reverse_debug.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_tuxrun.py (renamed from tests/functional/test_x86_64_tuxrun.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_virtio_balloon.py (renamed from tests/functional/test_virtio_balloon.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_virtio_gpu.py (renamed from tests/functional/test_virtio_gpu.py) | 0 | ||||
-rwxr-xr-x | tests/functional/x86_64/test_virtio_version.py (renamed from tests/functional/test_virtio_version.py) | 0 | ||||
-rw-r--r-- | tests/functional/xtensa/meson.build | 6 | ||||
-rwxr-xr-x | tests/functional/xtensa/test_lx60.py (renamed from tests/functional/test_xtensa_lx60.py) | 0 | ||||
-rwxr-xr-x | tests/functional/xtensa/test_replay.py (renamed from tests/functional/test_xtensa_replay.py) | 0 |
189 files changed, 824 insertions, 419 deletions
diff --git a/tests/functional/aarch64/meson.build b/tests/functional/aarch64/meson.build new file mode 100644 index 0000000..04846c6 --- /dev/null +++ b/tests/functional/aarch64/meson.build @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_aarch64_timeouts = { + 'aspeed_ast2700' : 600, + 'aspeed_ast2700fc' : 600, + 'device_passthrough' : 720, + 'imx8mp_evk' : 240, + 'raspi4' : 480, + 'reverse_debug' : 180, + 'rme_virt' : 1200, + 'rme_sbsaref' : 1200, + 'sbsaref_alpine' : 1200, + 'sbsaref_freebsd' : 720, + 'smmu' : 720, + 'tuxrun' : 240, + 'virt' : 360, + 'virt_gpu' : 480, +} + +tests_aarch64_system_quick = [ + 'migration', +] + +tests_aarch64_system_thorough = [ + 'aspeed_ast2700', + 'aspeed_ast2700fc', + 'device_passthrough', + 'hotplug_pci', + 'imx8mp_evk', + 'kvm', + 'multiprocess', + 'raspi3', + 'raspi4', + 'replay', + 'reverse_debug', + 'rme_virt', + 'rme_sbsaref', + 'sbsaref', + 'sbsaref_alpine', + 'sbsaref_freebsd', + 'smmu', + 'tcg_plugins', + 'tuxrun', + 'virt', + 'virt_gpu', + 'xen', + 'xlnx_versal', +] diff --git a/tests/functional/test_aarch64_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py index d02dc79..d02dc79 100755 --- a/tests/functional/test_aarch64_aspeed_ast2700.py +++ b/tests/functional/aarch64/test_aspeed_ast2700.py diff --git a/tests/functional/test_aarch64_aspeed_ast2700fc.py b/tests/functional/aarch64/test_aspeed_ast2700fc.py index b85370e..b85370e 100755 --- a/tests/functional/test_aarch64_aspeed_ast2700fc.py +++ b/tests/functional/aarch64/test_aspeed_ast2700fc.py diff --git a/tests/functional/test_aarch64_device_passthrough.py b/tests/functional/aarch64/test_device_passthrough.py index 1f3f158..1f3f158 100755 --- a/tests/functional/test_aarch64_device_passthrough.py +++ b/tests/functional/aarch64/test_device_passthrough.py diff --git a/tests/functional/test_aarch64_hotplug_pci.py b/tests/functional/aarch64/test_hotplug_pci.py index 0c67991..0c67991 100755 --- a/tests/functional/test_aarch64_hotplug_pci.py +++ b/tests/functional/aarch64/test_hotplug_pci.py diff --git a/tests/functional/test_aarch64_imx8mp_evk.py b/tests/functional/aarch64/test_imx8mp_evk.py index 99ddcde..99ddcde 100755 --- a/tests/functional/test_aarch64_imx8mp_evk.py +++ b/tests/functional/aarch64/test_imx8mp_evk.py diff --git a/tests/functional/test_aarch64_kvm.py b/tests/functional/aarch64/test_kvm.py index 9fb9286..9fb9286 100755 --- a/tests/functional/test_aarch64_kvm.py +++ b/tests/functional/aarch64/test_kvm.py diff --git a/tests/functional/aarch64/test_migration.py b/tests/functional/aarch64/test_migration.py new file mode 100755 index 0000000..70267e7 --- /dev/null +++ b/tests/functional/aarch64/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# aarch64 migration test + +from migration import MigrationTest + + +class Aarch64MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('quanta-gsj') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('quanta-gsj') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('quanta-gsj') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/aarch64/test_multiprocess.py b/tests/functional/aarch64/test_multiprocess.py new file mode 100755 index 0000000..1c6e45e --- /dev/null +++ b/tests/functional/aarch64/test_multiprocess.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Test for multiprocess qemu on aarch64 + +from multiprocess import Multiprocess +from qemu_test import Asset + + +class Aarch64Multiprocess(Multiprocess): + + ASSET_KERNEL_AARCH64 = Asset( + ('https://archives.fedoraproject.org/pub/archive/fedora/linux' + '/releases/31/Everything/aarch64/os/images/pxeboot/vmlinuz'), + '3ae07fcafbfc8e4abeb693035a74fe10698faae15e9ccd48882a9167800c1527') + + ASSET_INITRD_AARCH64 = Asset( + ('https://archives.fedoraproject.org/pub/archive/fedora/linux' + '/releases/31/Everything/aarch64/os/images/pxeboot/initrd.img'), + '9fd230cab10b1dafea41cf00150e6669d37051fad133bd618d2130284e16d526') + + def test_multiprocess(self): + kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE + + 'rdinit=/bin/bash console=ttyAMA0') + self.do_test(self.ASSET_KERNEL_AARCH64, self.ASSET_INITRD_AARCH64, + kernel_command_line, 'virt,gic-version=3') + + +if __name__ == '__main__': + Multiprocess.main() diff --git a/tests/functional/test_aarch64_raspi3.py b/tests/functional/aarch64/test_raspi3.py index 74f6630..74f6630 100755 --- a/tests/functional/test_aarch64_raspi3.py +++ b/tests/functional/aarch64/test_raspi3.py diff --git a/tests/functional/test_aarch64_raspi4.py b/tests/functional/aarch64/test_raspi4.py index 7a4302b..7a4302b 100755 --- a/tests/functional/test_aarch64_raspi4.py +++ b/tests/functional/aarch64/test_raspi4.py diff --git a/tests/functional/test_aarch64_replay.py b/tests/functional/aarch64/test_replay.py index db12e76..db12e76 100755 --- a/tests/functional/test_aarch64_replay.py +++ b/tests/functional/aarch64/test_replay.py diff --git a/tests/functional/test_aarch64_reverse_debug.py b/tests/functional/aarch64/test_reverse_debug.py index 58d4532..8bc91cc 100755 --- a/tests/functional/test_aarch64_reverse_debug.py +++ b/tests/functional/aarch64/test_reverse_debug.py @@ -21,7 +21,7 @@ class ReverseDebugging_AArch64(ReverseDebugging): REG_PC = 32 - KERNEL_ASSET = Asset( + ASSET_KERNEL = Asset( ('https://archives.fedoraproject.org/pub/archive/fedora/linux/' 'releases/29/Everything/aarch64/os/images/pxeboot/vmlinuz'), '7e1430b81c26bdd0da025eeb8fbd77b5dc961da4364af26e771bd39f379cbbf7') @@ -30,7 +30,7 @@ class ReverseDebugging_AArch64(ReverseDebugging): def test_aarch64_virt(self): self.set_machine('virt') self.cpu = 'cortex-a53' - kernel_path = self.KERNEL_ASSET.fetch() + kernel_path = self.ASSET_KERNEL.fetch() self.reverse_debugging(args=('-kernel', kernel_path)) diff --git a/tests/functional/test_aarch64_rme_sbsaref.py b/tests/functional/aarch64/test_rme_sbsaref.py index 746770e..100f1c7 100755 --- a/tests/functional/test_aarch64_rme_sbsaref.py +++ b/tests/functional/aarch64/test_rme_sbsaref.py @@ -13,7 +13,7 @@ import os from qemu_test import QemuSystemTest, Asset, wait_for_console_pattern from qemu_test import exec_command_and_wait_for_pattern -from test_aarch64_rme_virt import test_realms_guest +from test_rme_virt import test_realms_guest class Aarch64RMESbsaRefMachine(QemuSystemTest): diff --git a/tests/functional/test_aarch64_rme_virt.py b/tests/functional/aarch64/test_rme_virt.py index 8452d27..8452d27 100755 --- a/tests/functional/test_aarch64_rme_virt.py +++ b/tests/functional/aarch64/test_rme_virt.py diff --git a/tests/functional/test_aarch64_sbsaref.py b/tests/functional/aarch64/test_sbsaref.py index d3402f5..d3402f5 100755 --- a/tests/functional/test_aarch64_sbsaref.py +++ b/tests/functional/aarch64/test_sbsaref.py diff --git a/tests/functional/test_aarch64_sbsaref_alpine.py b/tests/functional/aarch64/test_sbsaref_alpine.py index 8776999..abb8f51 100755 --- a/tests/functional/test_aarch64_sbsaref_alpine.py +++ b/tests/functional/aarch64/test_sbsaref_alpine.py @@ -12,7 +12,7 @@ from qemu_test import QemuSystemTest, Asset, skipSlowTest from qemu_test import wait_for_console_pattern -from test_aarch64_sbsaref import fetch_firmware +from test_sbsaref import fetch_firmware class Aarch64SbsarefAlpine(QemuSystemTest): diff --git a/tests/functional/test_aarch64_sbsaref_freebsd.py b/tests/functional/aarch64/test_sbsaref_freebsd.py index 7ef016f..3b942f7 100755 --- a/tests/functional/test_aarch64_sbsaref_freebsd.py +++ b/tests/functional/aarch64/test_sbsaref_freebsd.py @@ -12,7 +12,7 @@ from qemu_test import QemuSystemTest, Asset, skipSlowTest from qemu_test import wait_for_console_pattern -from test_aarch64_sbsaref import fetch_firmware +from test_sbsaref import fetch_firmware class Aarch64SbsarefFreeBSD(QemuSystemTest): diff --git a/tests/functional/test_aarch64_smmu.py b/tests/functional/aarch64/test_smmu.py index e0f4a92..e0f4a92 100755 --- a/tests/functional/test_aarch64_smmu.py +++ b/tests/functional/aarch64/test_smmu.py diff --git a/tests/functional/test_aarch64_tcg_plugins.py b/tests/functional/aarch64/test_tcg_plugins.py index cb7e929..cb7e929 100755 --- a/tests/functional/test_aarch64_tcg_plugins.py +++ b/tests/functional/aarch64/test_tcg_plugins.py diff --git a/tests/functional/test_aarch64_tuxrun.py b/tests/functional/aarch64/test_tuxrun.py index 75adc8a..75adc8a 100755 --- a/tests/functional/test_aarch64_tuxrun.py +++ b/tests/functional/aarch64/test_tuxrun.py diff --git a/tests/functional/test_aarch64_virt.py b/tests/functional/aarch64/test_virt.py index 4d0ad90..4d0ad90 100755 --- a/tests/functional/test_aarch64_virt.py +++ b/tests/functional/aarch64/test_virt.py diff --git a/tests/functional/test_aarch64_virt_gpu.py b/tests/functional/aarch64/test_virt_gpu.py index 3844727..4e50887 100755 --- a/tests/functional/test_aarch64_virt_gpu.py +++ b/tests/functional/aarch64/test_virt_gpu.py @@ -76,6 +76,8 @@ class Aarch64VirtGPUMachine(LinuxKernelTest): self.skipTest("egl-headless support is not available") elif "'type' does not accept value 'dbus'" in excp.output: self.skipTest("dbus display support is not available") + elif "eglInitialize failed: EGL_NOT_INITIALIZED" in excp.output: + self.skipTest("EGL failed to initialize on this host") else: self.log.info("unhandled launch failure: %s", excp.output) raise excp diff --git a/tests/functional/test_aarch64_xen.py b/tests/functional/aarch64/test_xen.py index 261d796..261d796 100755 --- a/tests/functional/test_aarch64_xen.py +++ b/tests/functional/aarch64/test_xen.py diff --git a/tests/functional/test_aarch64_xlnx_versal.py b/tests/functional/aarch64/test_xlnx_versal.py index 4b9c49e..4b9c49e 100755 --- a/tests/functional/test_aarch64_xlnx_versal.py +++ b/tests/functional/aarch64/test_xlnx_versal.py diff --git a/tests/functional/alpha/meson.build b/tests/functional/alpha/meson.build new file mode 100644 index 0000000..26a5b3f --- /dev/null +++ b/tests/functional/alpha/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_alpha_system_quick = [ + 'migration', +] + +tests_alpha_system_thorough = [ + 'clipper', + 'replay', +] diff --git a/tests/functional/test_alpha_clipper.py b/tests/functional/alpha/test_clipper.py index c5d7181..c5d7181 100755 --- a/tests/functional/test_alpha_clipper.py +++ b/tests/functional/alpha/test_clipper.py diff --git a/tests/functional/alpha/test_migration.py b/tests/functional/alpha/test_migration.py new file mode 100755 index 0000000..f11b523 --- /dev/null +++ b/tests/functional/alpha/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Alpha migration test + +from migration import MigrationTest + + +class AlphaMigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('clipper') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('clipper') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('clipper') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_alpha_replay.py b/tests/functional/alpha/test_replay.py index 24a17ef..24a17ef 100755 --- a/tests/functional/test_alpha_replay.py +++ b/tests/functional/alpha/test_replay.py diff --git a/tests/functional/arm/meson.build b/tests/functional/arm/meson.build new file mode 100644 index 0000000..e4e7dba --- /dev/null +++ b/tests/functional/arm/meson.build @@ -0,0 +1,62 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_arm_timeouts = { + 'aspeed_palmetto' : 120, + 'aspeed_romulus' : 120, + 'aspeed_witherspoon' : 120, + 'aspeed_ast2500' : 720, + 'aspeed_ast2600' : 1200, + 'aspeed_bletchley' : 480, + 'aspeed_catalina' : 480, + 'aspeed_gb200nvl_bmc' : 480, + 'aspeed_rainier' : 480, + 'bpim2u' : 500, + 'collie' : 180, + 'cubieboard' : 360, + 'orangepi' : 540, + 'quanta_gsj' : 240, + 'raspi2' : 120, + 'replay' : 240, + 'tuxrun' : 240, + 'sx1' : 360, +} + +tests_arm_system_quick = [ + 'migration', +] + +tests_arm_system_thorough = [ + 'aspeed_ast1030', + 'aspeed_palmetto', + 'aspeed_romulus', + 'aspeed_witherspoon', + 'aspeed_ast2500', + 'aspeed_ast2600', + 'aspeed_bletchley', + 'aspeed_catalina', + 'aspeed_gb200nvl_bmc', + 'aspeed_rainier', + 'bpim2u', + 'canona1100', + 'collie', + 'cubieboard', + 'emcraft_sf2', + 'integratorcp', + 'max78000fthr', + 'microbit', + 'orangepi', + 'quanta_gsj', + 'raspi2', + 'realview', + 'replay', + 'smdkc210', + 'stellaris', + 'sx1', + 'vexpress', + 'virt', + 'tuxrun', +] + +tests_arm_linuxuser_thorough = [ + 'bflt', +] diff --git a/tests/functional/test_arm_aspeed_ast1030.py b/tests/functional/arm/test_aspeed_ast1030.py index 77037f0..77037f0 100755 --- a/tests/functional/test_arm_aspeed_ast1030.py +++ b/tests/functional/arm/test_aspeed_ast1030.py diff --git a/tests/functional/test_arm_aspeed_ast2500.py b/tests/functional/arm/test_aspeed_ast2500.py index 6923fe8..6923fe8 100755 --- a/tests/functional/test_arm_aspeed_ast2500.py +++ b/tests/functional/arm/test_aspeed_ast2500.py diff --git a/tests/functional/test_arm_aspeed_ast2600.py b/tests/functional/arm/test_aspeed_ast2600.py index fdae4c9..fdae4c9 100755 --- a/tests/functional/test_arm_aspeed_ast2600.py +++ b/tests/functional/arm/test_aspeed_ast2600.py diff --git a/tests/functional/test_arm_aspeed_bletchley.py b/tests/functional/arm/test_aspeed_bletchley.py index 5a60b24..5a60b24 100644..100755 --- a/tests/functional/test_arm_aspeed_bletchley.py +++ b/tests/functional/arm/test_aspeed_bletchley.py diff --git a/tests/functional/test_arm_aspeed_catalina.py b/tests/functional/arm/test_aspeed_catalina.py index dc2f24e..dc2f24e 100755 --- a/tests/functional/test_arm_aspeed_catalina.py +++ b/tests/functional/arm/test_aspeed_catalina.py diff --git a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py b/tests/functional/arm/test_aspeed_gb200nvl_bmc.py index 8e8e3f0..8e8e3f0 100644..100755 --- a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py +++ b/tests/functional/arm/test_aspeed_gb200nvl_bmc.py diff --git a/tests/functional/test_arm_aspeed_palmetto.py b/tests/functional/arm/test_aspeed_palmetto.py index ff0b821..ff0b821 100755 --- a/tests/functional/test_arm_aspeed_palmetto.py +++ b/tests/functional/arm/test_aspeed_palmetto.py diff --git a/tests/functional/test_arm_aspeed_rainier.py b/tests/functional/arm/test_aspeed_rainier.py index 602d619..602d619 100755 --- a/tests/functional/test_arm_aspeed_rainier.py +++ b/tests/functional/arm/test_aspeed_rainier.py diff --git a/tests/functional/test_arm_aspeed_romulus.py b/tests/functional/arm/test_aspeed_romulus.py index 0447212..0447212 100755 --- a/tests/functional/test_arm_aspeed_romulus.py +++ b/tests/functional/arm/test_aspeed_romulus.py diff --git a/tests/functional/test_arm_aspeed_witherspoon.py b/tests/functional/arm/test_aspeed_witherspoon.py index 51a2d47..51a2d47 100644..100755 --- a/tests/functional/test_arm_aspeed_witherspoon.py +++ b/tests/functional/arm/test_aspeed_witherspoon.py diff --git a/tests/functional/test_arm_bflt.py b/tests/functional/arm/test_bflt.py index f273fc8..f273fc8 100755 --- a/tests/functional/test_arm_bflt.py +++ b/tests/functional/arm/test_bflt.py diff --git a/tests/functional/test_arm_bpim2u.py b/tests/functional/arm/test_bpim2u.py index 8bed64b..8bed64b 100755 --- a/tests/functional/test_arm_bpim2u.py +++ b/tests/functional/arm/test_bpim2u.py diff --git a/tests/functional/test_arm_canona1100.py b/tests/functional/arm/test_canona1100.py index 21a1a59..21a1a59 100755 --- a/tests/functional/test_arm_canona1100.py +++ b/tests/functional/arm/test_canona1100.py diff --git a/tests/functional/test_arm_collie.py b/tests/functional/arm/test_collie.py index fe1be3d..fe1be3d 100755 --- a/tests/functional/test_arm_collie.py +++ b/tests/functional/arm/test_collie.py diff --git a/tests/functional/test_arm_cubieboard.py b/tests/functional/arm/test_cubieboard.py index b536c2f..b536c2f 100755 --- a/tests/functional/test_arm_cubieboard.py +++ b/tests/functional/arm/test_cubieboard.py diff --git a/tests/functional/test_arm_emcraft_sf2.py b/tests/functional/arm/test_emcraft_sf2.py index f9f3f06..f9f3f06 100755 --- a/tests/functional/test_arm_emcraft_sf2.py +++ b/tests/functional/arm/test_emcraft_sf2.py diff --git a/tests/functional/test_arm_integratorcp.py b/tests/functional/arm/test_integratorcp.py index 4f00924..4f00924 100755 --- a/tests/functional/test_arm_integratorcp.py +++ b/tests/functional/arm/test_integratorcp.py diff --git a/tests/functional/test_arm_max78000fthr.py b/tests/functional/arm/test_max78000fthr.py index a82980b..a82980b 100755 --- a/tests/functional/test_arm_max78000fthr.py +++ b/tests/functional/arm/test_max78000fthr.py diff --git a/tests/functional/test_arm_microbit.py b/tests/functional/arm/test_microbit.py index 68ea4e7..68ea4e7 100755 --- a/tests/functional/test_arm_microbit.py +++ b/tests/functional/arm/test_microbit.py diff --git a/tests/functional/arm/test_migration.py b/tests/functional/arm/test_migration.py new file mode 100755 index 0000000..0aa89f4 --- /dev/null +++ b/tests/functional/arm/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# arm migration test + +from migration import MigrationTest + + +class ArmMigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('npcm750-evb') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('npcm750-evb') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('npcm750-evb') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_arm_orangepi.py b/tests/functional/arm/test_orangepi.py index f9bfa8c..f9bfa8c 100755 --- a/tests/functional/test_arm_orangepi.py +++ b/tests/functional/arm/test_orangepi.py diff --git a/tests/functional/test_arm_quanta_gsj.py b/tests/functional/arm/test_quanta_gsj.py index cb0545f..cb0545f 100755 --- a/tests/functional/test_arm_quanta_gsj.py +++ b/tests/functional/arm/test_quanta_gsj.py diff --git a/tests/functional/test_arm_raspi2.py b/tests/functional/arm/test_raspi2.py index d3c7aaa..d3c7aaa 100755 --- a/tests/functional/test_arm_raspi2.py +++ b/tests/functional/arm/test_raspi2.py diff --git a/tests/functional/test_arm_realview.py b/tests/functional/arm/test_realview.py index 82cc964..82cc964 100755 --- a/tests/functional/test_arm_realview.py +++ b/tests/functional/arm/test_realview.py diff --git a/tests/functional/test_arm_replay.py b/tests/functional/arm/test_replay.py index e002e6a..e002e6a 100755 --- a/tests/functional/test_arm_replay.py +++ b/tests/functional/arm/test_replay.py diff --git a/tests/functional/test_arm_smdkc210.py b/tests/functional/arm/test_smdkc210.py index 3154e7f..3154e7f 100755 --- a/tests/functional/test_arm_smdkc210.py +++ b/tests/functional/arm/test_smdkc210.py diff --git a/tests/functional/test_arm_stellaris.py b/tests/functional/arm/test_stellaris.py index cbd21cb..cbd21cb 100755 --- a/tests/functional/test_arm_stellaris.py +++ b/tests/functional/arm/test_stellaris.py diff --git a/tests/functional/test_arm_sx1.py b/tests/functional/arm/test_sx1.py index 25800b3..25800b3 100755 --- a/tests/functional/test_arm_sx1.py +++ b/tests/functional/arm/test_sx1.py diff --git a/tests/functional/test_arm_tuxrun.py b/tests/functional/arm/test_tuxrun.py index 4ac85f4..4ac85f4 100755 --- a/tests/functional/test_arm_tuxrun.py +++ b/tests/functional/arm/test_tuxrun.py diff --git a/tests/functional/test_arm_vexpress.py b/tests/functional/arm/test_vexpress.py index 6b11552..6b11552 100755 --- a/tests/functional/test_arm_vexpress.py +++ b/tests/functional/arm/test_vexpress.py diff --git a/tests/functional/test_arm_virt.py b/tests/functional/arm/test_virt.py index 7b65491..7b65491 100755 --- a/tests/functional/test_arm_virt.py +++ b/tests/functional/arm/test_virt.py diff --git a/tests/functional/avr/meson.build b/tests/functional/avr/meson.build new file mode 100644 index 0000000..7a2cb70 --- /dev/null +++ b/tests/functional/avr/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_avr_system_thorough = [ + 'mega2560', + 'uno', +] diff --git a/tests/functional/test_avr_mega2560.py b/tests/functional/avr/test_mega2560.py index 6359b72..6359b72 100755 --- a/tests/functional/test_avr_mega2560.py +++ b/tests/functional/avr/test_mega2560.py diff --git a/tests/functional/test_avr_uno.py b/tests/functional/avr/test_uno.py index adb3b73..adb3b73 100755 --- a/tests/functional/test_avr_uno.py +++ b/tests/functional/avr/test_uno.py diff --git a/tests/functional/generic/meson.build b/tests/functional/generic/meson.build new file mode 100644 index 0000000..013cc96 --- /dev/null +++ b/tests/functional/generic/meson.build @@ -0,0 +1,14 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_generic_system = [ + 'empty_cpu_model', + 'info_usernet', + 'version', + 'vnc', +] + +tests_generic_linuxuser = [ +] + +tests_generic_bsduser = [ +] diff --git a/tests/functional/test_empty_cpu_model.py b/tests/functional/generic/test_empty_cpu_model.py index 0081b06..0081b06 100755 --- a/tests/functional/test_empty_cpu_model.py +++ b/tests/functional/generic/test_empty_cpu_model.py diff --git a/tests/functional/test_info_usernet.py b/tests/functional/generic/test_info_usernet.py index e8cbc37..e8cbc37 100755 --- a/tests/functional/test_info_usernet.py +++ b/tests/functional/generic/test_info_usernet.py diff --git a/tests/functional/test_version.py b/tests/functional/generic/test_version.py index 3ab3b67..3ab3b67 100755 --- a/tests/functional/test_version.py +++ b/tests/functional/generic/test_version.py diff --git a/tests/functional/test_vnc.py b/tests/functional/generic/test_vnc.py index f1dd159..f1dd159 100755 --- a/tests/functional/test_vnc.py +++ b/tests/functional/generic/test_vnc.py diff --git a/tests/functional/hppa/meson.build b/tests/functional/hppa/meson.build new file mode 100644 index 0000000..a334837 --- /dev/null +++ b/tests/functional/hppa/meson.build @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_hppa_system_quick = [ + 'seabios', +] diff --git a/tests/functional/test_hppa_seabios.py b/tests/functional/hppa/test_seabios.py index 661b246..661b246 100755 --- a/tests/functional/test_hppa_seabios.py +++ b/tests/functional/hppa/test_seabios.py diff --git a/tests/functional/i386/meson.build b/tests/functional/i386/meson.build new file mode 100644 index 0000000..23d8c21 --- /dev/null +++ b/tests/functional/i386/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_i386_system_quick = [ + 'migration', +] + +tests_i386_system_thorough = [ + 'replay', + 'tuxrun', +] diff --git a/tests/functional/i386/test_migration.py b/tests/functional/i386/test_migration.py new file mode 100755 index 0000000..a57f316 --- /dev/null +++ b/tests/functional/i386/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# i386 migration test + +from migration import MigrationTest + + +class I386MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('isapc') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('isapc') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('isapc') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_i386_replay.py b/tests/functional/i386/test_replay.py index 7c4c260..7c4c260 100755 --- a/tests/functional/test_i386_replay.py +++ b/tests/functional/i386/test_replay.py diff --git a/tests/functional/test_i386_tuxrun.py b/tests/functional/i386/test_tuxrun.py index f3ccf11..f3ccf11 100755 --- a/tests/functional/test_i386_tuxrun.py +++ b/tests/functional/i386/test_tuxrun.py diff --git a/tests/functional/loongarch64/meson.build b/tests/functional/loongarch64/meson.build new file mode 100644 index 0000000..d168717 --- /dev/null +++ b/tests/functional/loongarch64/meson.build @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_loongarch64_system_thorough = [ + 'virt', +] diff --git a/tests/functional/test_loongarch64_virt.py b/tests/functional/loongarch64/test_virt.py index b7d9abf..b7d9abf 100755 --- a/tests/functional/test_loongarch64_virt.py +++ b/tests/functional/loongarch64/test_virt.py diff --git a/tests/functional/m68k/meson.build b/tests/functional/m68k/meson.build new file mode 100644 index 0000000..e29044a --- /dev/null +++ b/tests/functional/m68k/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_m68k_system_thorough = [ + 'mcf5208evb', + 'nextcube', + 'replay', + 'q800', + 'tuxrun', +] diff --git a/tests/functional/test_m68k_mcf5208evb.py b/tests/functional/m68k/test_mcf5208evb.py index c7d1998..c7d1998 100755 --- a/tests/functional/test_m68k_mcf5208evb.py +++ b/tests/functional/m68k/test_mcf5208evb.py diff --git a/tests/functional/test_m68k_nextcube.py b/tests/functional/m68k/test_nextcube.py index 13c72bd..13c72bd 100755 --- a/tests/functional/test_m68k_nextcube.py +++ b/tests/functional/m68k/test_nextcube.py diff --git a/tests/functional/test_m68k_q800.py b/tests/functional/m68k/test_q800.py index b3e6553..b3e6553 100755 --- a/tests/functional/test_m68k_q800.py +++ b/tests/functional/m68k/test_q800.py diff --git a/tests/functional/test_m68k_replay.py b/tests/functional/m68k/test_replay.py index 213d6ae..213d6ae 100755 --- a/tests/functional/test_m68k_replay.py +++ b/tests/functional/m68k/test_replay.py diff --git a/tests/functional/test_m68k_tuxrun.py b/tests/functional/m68k/test_tuxrun.py index 7eacba1..7eacba1 100755 --- a/tests/functional/test_m68k_tuxrun.py +++ b/tests/functional/m68k/test_tuxrun.py diff --git a/tests/functional/meson.build b/tests/functional/meson.build index 311c6f1..2a0c5aa 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -9,345 +9,34 @@ if get_option('tcg_interpreter') subdir_done() endif -# Timeouts for individual tests that can be slow e.g. with debugging enabled -test_timeouts = { - 'aarch64_aspeed_ast2700' : 600, - 'aarch64_aspeed_ast2700fc' : 600, - 'aarch64_device_passthrough' : 720, - 'aarch64_imx8mp_evk' : 240, - 'aarch64_raspi4' : 480, - 'aarch64_reverse_debug' : 180, - 'aarch64_rme_virt' : 1200, - 'aarch64_rme_sbsaref' : 1200, - 'aarch64_sbsaref_alpine' : 1200, - 'aarch64_sbsaref_freebsd' : 720, - 'aarch64_smmu' : 720, - 'aarch64_tuxrun' : 240, - 'aarch64_virt' : 360, - 'aarch64_virt_gpu' : 480, - 'acpi_bits' : 420, - 'arm_aspeed_palmetto' : 120, - 'arm_aspeed_romulus' : 120, - 'arm_aspeed_witherspoon' : 120, - 'arm_aspeed_ast2500' : 720, - 'arm_aspeed_ast2600' : 1200, - 'arm_aspeed_bletchley' : 480, - 'arm_aspeed_catalina' : 480, - 'arm_aspeed_gb200nvl_bmc' : 480, - 'arm_aspeed_rainier' : 480, - 'arm_bpim2u' : 500, - 'arm_collie' : 180, - 'arm_cubieboard' : 360, - 'arm_orangepi' : 540, - 'arm_quanta_gsj' : 240, - 'arm_raspi2' : 120, - 'arm_replay' : 240, - 'arm_tuxrun' : 240, - 'arm_sx1' : 360, - 'intel_iommu': 300, - 'mips_malta' : 480, - 'mipsel_malta' : 420, - 'mipsel_replay' : 480, - 'mips64_malta' : 240, - 'mips64el_malta' : 420, - 'mips64el_replay' : 180, - 'netdev_ethtool' : 180, - 'ppc_40p' : 240, - 'ppc64_hv' : 1000, - 'ppc64_powernv' : 480, - 'ppc64_pseries' : 480, - 'ppc64_replay' : 210, - 'ppc64_tuxrun' : 420, - 'ppc64_mac99' : 120, - 'riscv64_tuxrun' : 120, - 's390x_ccw_virtio' : 420, - 'sh4_tuxrun' : 240, - 'virtio_balloon': 120, - 'x86_64_kvm_xen' : 180, - 'x86_64_replay' : 480, -} - -tests_generic_system = [ - 'empty_cpu_model', - 'info_usernet', - 'version', -] - -tests_generic_linuxuser = [ -] - -tests_generic_bsduser = [ -] - -tests_aarch64_system_quick = [ - 'migration', -] - -tests_aarch64_system_thorough = [ - 'aarch64_aspeed_ast2700', - 'aarch64_aspeed_ast2700fc', - 'aarch64_device_passthrough', - 'aarch64_hotplug_pci', - 'aarch64_imx8mp_evk', - 'aarch64_kvm', - 'aarch64_raspi3', - 'aarch64_raspi4', - 'aarch64_replay', - 'aarch64_reverse_debug', - 'aarch64_rme_virt', - 'aarch64_rme_sbsaref', - 'aarch64_sbsaref', - 'aarch64_sbsaref_alpine', - 'aarch64_sbsaref_freebsd', - 'aarch64_smmu', - 'aarch64_tcg_plugins', - 'aarch64_tuxrun', - 'aarch64_virt', - 'aarch64_virt_gpu', - 'aarch64_xen', - 'aarch64_xlnx_versal', - 'multiprocess', -] - -tests_alpha_system_quick = [ - 'migration', -] - -tests_alpha_system_thorough = [ - 'alpha_clipper', - 'alpha_replay', -] - -tests_arm_system_quick = [ - 'migration', -] - -tests_arm_system_thorough = [ - 'arm_aspeed_ast1030', - 'arm_aspeed_palmetto', - 'arm_aspeed_romulus', - 'arm_aspeed_witherspoon', - 'arm_aspeed_ast2500', - 'arm_aspeed_ast2600', - 'arm_aspeed_bletchley', - 'arm_aspeed_catalina', - 'arm_aspeed_gb200nvl_bmc', - 'arm_aspeed_rainier', - 'arm_bpim2u', - 'arm_canona1100', - 'arm_collie', - 'arm_cubieboard', - 'arm_emcraft_sf2', - 'arm_integratorcp', - 'arm_max78000fthr', - 'arm_microbit', - 'arm_orangepi', - 'arm_quanta_gsj', - 'arm_raspi2', - 'arm_realview', - 'arm_replay', - 'arm_smdkc210', - 'arm_stellaris', - 'arm_sx1', - 'arm_vexpress', - 'arm_virt', - 'arm_tuxrun', -] - -tests_arm_linuxuser_thorough = [ - 'arm_bflt', -] - -tests_avr_system_thorough = [ - 'avr_mega2560', - 'avr_uno', -] - -tests_hppa_system_quick = [ - 'hppa_seabios', -] - -tests_i386_system_quick = [ - 'migration', -] - -tests_i386_system_thorough = [ - 'i386_replay', - 'i386_tuxrun', -] - -tests_loongarch64_system_thorough = [ - 'loongarch64_virt', -] - -tests_m68k_system_thorough = [ - 'm68k_mcf5208evb', - 'm68k_nextcube', - 'm68k_replay', - 'm68k_q800', - 'm68k_tuxrun', -] - -tests_microblaze_system_thorough = [ - 'microblaze_replay', - 'microblaze_s3adsp1800' -] - -tests_microblazeel_system_thorough = [ - 'microblazeel_s3adsp1800' -] - -tests_mips_system_thorough = [ - 'mips_malta', - 'mips_replay', - 'mips_tuxrun', -] - -tests_mipsel_system_thorough = [ - 'mipsel_malta', - 'mipsel_replay', - 'mipsel_tuxrun', -] - -tests_mips64_system_thorough = [ - 'mips64_malta', - 'mips64_tuxrun', -] - -tests_mips64el_system_thorough = [ - 'mips64el_fuloong2e', - 'mips64el_loongson3v', - 'mips64el_malta', - 'mips64el_replay', - 'mips64el_tuxrun', -] - -tests_or1k_system_thorough = [ - 'or1k_replay', - 'or1k_sim', -] - -tests_ppc_system_quick = [ - 'migration', - 'ppc_74xx', -] - -tests_ppc_system_thorough = [ - 'ppc_40p', - 'ppc_amiga', - 'ppc_bamboo', - 'ppc_mac', - 'ppc_mpc8544ds', - 'ppc_replay', - 'ppc_sam460ex', - 'ppc_tuxrun', - 'ppc_virtex_ml507', -] - -tests_ppc64_system_quick = [ - 'migration', -] - -tests_ppc64_system_thorough = [ - 'ppc64_e500', - 'ppc64_hv', - 'ppc64_powernv', - 'ppc64_pseries', - 'ppc64_replay', - 'ppc64_reverse_debug', - 'ppc64_tuxrun', - 'ppc64_mac99', -] - -tests_riscv32_system_quick = [ - 'migration', - 'riscv_opensbi', -] - -tests_riscv32_system_thorough = [ - 'riscv32_tuxrun', -] - -tests_riscv64_system_quick = [ - 'migration', - 'riscv_opensbi', -] - -tests_riscv64_system_thorough = [ - 'riscv64_sifive_u', - 'riscv64_tuxrun', -] - -tests_rx_system_thorough = [ - 'rx_gdbsim', -] - -tests_s390x_system_thorough = [ - 's390x_ccw_virtio', - 's390x_pxelinux', - 's390x_replay', - 's390x_topology', - 's390x_tuxrun', -] - -tests_sh4_system_thorough = [ - 'sh4_r2d', - 'sh4_tuxrun', -] - -tests_sh4eb_system_thorough = [ - 'sh4eb_r2d', -] - -tests_sparc_system_quick = [ - 'migration', -] - -tests_sparc_system_thorough = [ - 'sparc_replay', - 'sparc_sun4m', -] - -tests_sparc64_system_quick = [ - 'migration', -] - -tests_sparc64_system_thorough = [ - 'sparc64_sun4u', - 'sparc64_tuxrun', -] - -tests_x86_64_system_quick = [ - 'cpu_queries', - 'mem_addr_space', - 'migration', - 'pc_cpu_hotplug_props', - 'virtio_version', - 'x86_cpu_model_versions', - 'vnc', - 'memlock', -] - -tests_x86_64_system_thorough = [ - 'acpi_bits', - 'intel_iommu', - 'linux_initrd', - 'multiprocess', - 'netdev_ethtool', - 'virtio_balloon', - 'virtio_gpu', - 'x86_64_hotplug_blk', - 'x86_64_hotplug_cpu', - 'x86_64_kvm_xen', - 'x86_64_replay', - 'x86_64_reverse_debug', - 'x86_64_tuxrun', -] - -tests_xtensa_system_thorough = [ - 'xtensa_lx60', - 'xtensa_replay', -] +subdir('aarch64') +subdir('alpha') +subdir('arm') +subdir('avr') +subdir('hppa') +subdir('i386') +subdir('loongarch64') +subdir('m68k') +subdir('microblaze') +subdir('microblazeel') +subdir('mips') +subdir('mipsel') +subdir('mips64') +subdir('mips64el') +subdir('or1k') +subdir('ppc') +subdir('ppc64') +subdir('riscv32') +subdir('riscv64') +subdir('rx') +subdir('s390x') +subdir('sh4') +subdir('sh4eb') +subdir('sparc') +subdir('sparc64') +subdir('x86_64') +subdir('xtensa') +subdir('generic') precache_all = [] foreach speed : ['quick', 'thorough'] @@ -390,7 +79,11 @@ foreach speed : ['quick', 'thorough'] foreach test : target_tests testname = '@0@-@1@'.format(target_base, test) - testfile = 'test_' + test + '.py' + if fs.exists('generic' / 'test_' + test + '.py') + testfile = 'generic' / 'test_' + test + '.py' + else + testfile = target_base / 'test_' + test + '.py' + endif testpath = meson.current_source_dir() / testfile teststamp = testname + '.tstamp' test_precache_env = environment() @@ -404,6 +97,11 @@ foreach speed : ['quick', 'thorough'] build_by_default: false, env: test_precache_env) precache_all += precache + if is_variable('test_' + target_base + '_timeouts') + time_out = get_variable('test_' + target_base + '_timeouts').get(test, 90) + else + time_out = 90 + endif # Ideally we would add 'precache' to 'depends' here, such that # 'build_by_default: false' lets the pre-caching automatically @@ -419,8 +117,8 @@ foreach speed : ['quick', 'thorough'] env: test_env, args: [testpath], protocol: 'tap', - timeout: test_timeouts.get(test, 90), - priority: test_timeouts.get(test, 90), + timeout: time_out, + priority: time_out, suite: suites) endforeach endforeach diff --git a/tests/functional/microblaze/meson.build b/tests/functional/microblaze/meson.build new file mode 100644 index 0000000..8069ca9 --- /dev/null +++ b/tests/functional/microblaze/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_microblaze_system_thorough = [ + 'replay', + 's3adsp1800' +] diff --git a/tests/functional/test_microblaze_replay.py b/tests/functional/microblaze/test_replay.py index 7484c41..7484c41 100755 --- a/tests/functional/test_microblaze_replay.py +++ b/tests/functional/microblaze/test_replay.py diff --git a/tests/functional/test_microblaze_s3adsp1800.py b/tests/functional/microblaze/test_s3adsp1800.py index f093b16..f093b16 100755 --- a/tests/functional/test_microblaze_s3adsp1800.py +++ b/tests/functional/microblaze/test_s3adsp1800.py diff --git a/tests/functional/microblazeel/meson.build b/tests/functional/microblazeel/meson.build new file mode 100644 index 0000000..27619dc --- /dev/null +++ b/tests/functional/microblazeel/meson.build @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_microblazeel_system_thorough = [ + 's3adsp1800' +] diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/microblazeel/test_s3adsp1800.py index 915902d..75ce885 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/microblazeel/test_s3adsp1800.py @@ -7,7 +7,7 @@ # This work is licensed under the terms of the GNU GPL, version 2 or # later. See the COPYING file in the top-level directory. -from test_microblaze_s3adsp1800 import MicroblazeMachine +from microblaze.test_s3adsp1800 import MicroblazeMachine class MicroblazeLittleEndianMachine(MicroblazeMachine): diff --git a/tests/functional/test_migration.py b/tests/functional/migration.py index c4393c3..0739554 100755..100644 --- a/tests/functional/test_migration.py +++ b/tests/functional/migration.py @@ -1,6 +1,6 @@ -#!/usr/bin/env python3 +# SPDX-License-Identifier: GPL-2.0-or-later # -# Migration test +# Migration test base class # # Copyright (c) 2019 Red Hat, Inc. # @@ -14,7 +14,7 @@ import tempfile import time -from qemu_test import QemuSystemTest, skipIfMissingCommands +from qemu_test import QemuSystemTest, which from qemu_test.ports import Ports @@ -41,24 +41,7 @@ class MigrationTest(QemuSystemTest): self.assertEqual(dst_vm.cmd('query-status')['status'], 'running') self.assertEqual(src_vm.cmd('query-status')['status'],'postmigrate') - def select_machine(self): - target_machine = { - 'aarch64': 'quanta-gsj', - 'alpha': 'clipper', - 'arm': 'npcm750-evb', - 'i386': 'isapc', - 'ppc': 'sam460ex', - 'ppc64': 'mac99', - 'riscv32': 'spike', - 'riscv64': 'virt', - 'sparc': 'SS-4', - 'sparc64': 'sun4u', - 'x86_64': 'microvm', - } - self.set_machine(target_machine[self.arch]) - def do_migrate(self, dest_uri, src_uri=None): - self.select_machine() dest_vm = self.get_vm('-incoming', dest_uri, name="dest-qemu") dest_vm.add_args('-nodefaults') dest_vm.launch() @@ -76,23 +59,21 @@ class MigrationTest(QemuSystemTest): self.skipTest('Failed to find a free port') return port - def test_migration_with_tcp_localhost(self): + def migration_with_tcp_localhost(self): with Ports() as ports: dest_uri = 'tcp:localhost:%u' % self._get_free_port(ports) self.do_migrate(dest_uri) - def test_migration_with_unix(self): + def migration_with_unix(self): with tempfile.TemporaryDirectory(prefix='socket_') as socket_path: dest_uri = 'unix:%s/qemu-test.sock' % socket_path self.do_migrate(dest_uri) - @skipIfMissingCommands('ncat') - def test_migration_with_exec(self): + def migration_with_exec(self): + if not which('ncat'): + self.skipTest('ncat is not available') with Ports() as ports: free_port = self._get_free_port(ports) dest_uri = 'exec:ncat -l localhost %u' % free_port src_uri = 'exec:ncat localhost %u' % free_port self.do_migrate(dest_uri, src_uri) - -if __name__ == '__main__': - QemuSystemTest.main() diff --git a/tests/functional/mips/meson.build b/tests/functional/mips/meson.build new file mode 100644 index 0000000..49aaf53 --- /dev/null +++ b/tests/functional/mips/meson.build @@ -0,0 +1,11 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_mips_timeouts = { + 'malta' : 480, +} + +tests_mips_system_thorough = [ + 'malta', + 'replay', + 'tuxrun', +] diff --git a/tests/functional/test_mips_malta.py b/tests/functional/mips/test_malta.py index 30279f0..30279f0 100755 --- a/tests/functional/test_mips_malta.py +++ b/tests/functional/mips/test_malta.py diff --git a/tests/functional/test_mips_replay.py b/tests/functional/mips/test_replay.py index 4327481..4327481 100755 --- a/tests/functional/test_mips_replay.py +++ b/tests/functional/mips/test_replay.py diff --git a/tests/functional/test_mips_tuxrun.py b/tests/functional/mips/test_tuxrun.py index 6771dbd..6771dbd 100755 --- a/tests/functional/test_mips_tuxrun.py +++ b/tests/functional/mips/test_tuxrun.py diff --git a/tests/functional/mips64/meson.build b/tests/functional/mips64/meson.build new file mode 100644 index 0000000..3ff2118 --- /dev/null +++ b/tests/functional/mips64/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_mips64_timeouts = { + 'malta' : 240, +} + +tests_mips64_system_thorough = [ + 'malta', + 'tuxrun', +] diff --git a/tests/functional/test_mips64_malta.py b/tests/functional/mips64/test_malta.py index 53c3e0c..a553d3c 100755 --- a/tests/functional/test_mips64_malta.py +++ b/tests/functional/mips64/test_malta.py @@ -5,7 +5,7 @@ # SPDX-License-Identifier: GPL-2.0-or-later from qemu_test import LinuxKernelTest, Asset -from test_mips_malta import mips_check_wheezy +from mips.test_malta import mips_check_wheezy class MaltaMachineConsole(LinuxKernelTest): diff --git a/tests/functional/test_mips64_tuxrun.py b/tests/functional/mips64/test_tuxrun.py index 0e4c659..0e4c659 100755 --- a/tests/functional/test_mips64_tuxrun.py +++ b/tests/functional/mips64/test_tuxrun.py diff --git a/tests/functional/mips64el/meson.build b/tests/functional/mips64el/meson.build new file mode 100644 index 0000000..69ec501 --- /dev/null +++ b/tests/functional/mips64el/meson.build @@ -0,0 +1,14 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_mips64el_timeouts = { + 'malta' : 420, + 'replay' : 180, +} + +tests_mips64el_system_thorough = [ + 'fuloong2e', + 'loongson3v', + 'malta', + 'replay', + 'tuxrun', +] diff --git a/tests/functional/test_mips64el_fuloong2e.py b/tests/functional/mips64el/test_fuloong2e.py index 35e500b..35e500b 100755 --- a/tests/functional/test_mips64el_fuloong2e.py +++ b/tests/functional/mips64el/test_fuloong2e.py diff --git a/tests/functional/test_mips64el_loongson3v.py b/tests/functional/mips64el/test_loongson3v.py index f85371e..f85371e 100755 --- a/tests/functional/test_mips64el_loongson3v.py +++ b/tests/functional/mips64el/test_loongson3v.py diff --git a/tests/functional/test_mips64el_malta.py b/tests/functional/mips64el/test_malta.py index 3cc79b7..8fdc49b 100755 --- a/tests/functional/test_mips64el_malta.py +++ b/tests/functional/mips64el/test_malta.py @@ -16,7 +16,7 @@ from qemu_test import LinuxKernelTest, Asset from qemu_test import exec_command_and_wait_for_pattern from qemu_test import skipIfMissingImports, skipFlakyTest, skipUntrustedTest -from test_mips_malta import mips_check_wheezy +from mips.test_malta import mips_check_wheezy class MaltaMachineConsole(LinuxKernelTest): @@ -191,7 +191,7 @@ class MaltaMachineFramebuffer(LinuxKernelTest): self.do_test_i6400_framebuffer_logo(8) -from test_mipsel_malta import MaltaMachineYAMON +from mipsel.test_malta import MaltaMachineYAMON if __name__ == '__main__': LinuxKernelTest.main() diff --git a/tests/functional/test_mips64el_replay.py b/tests/functional/mips64el/test_replay.py index 26a6ccf..26a6ccf 100755 --- a/tests/functional/test_mips64el_replay.py +++ b/tests/functional/mips64el/test_replay.py diff --git a/tests/functional/test_mips64el_tuxrun.py b/tests/functional/mips64el/test_tuxrun.py index 0a24757..0a24757 100755 --- a/tests/functional/test_mips64el_tuxrun.py +++ b/tests/functional/mips64el/test_tuxrun.py diff --git a/tests/functional/mipsel/meson.build b/tests/functional/mipsel/meson.build new file mode 100644 index 0000000..8bfdf06 --- /dev/null +++ b/tests/functional/mipsel/meson.build @@ -0,0 +1,12 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_mipsel_timeouts = { + 'malta' : 420, + 'replay' : 480, +} + +tests_mipsel_system_thorough = [ + 'malta', + 'replay', + 'tuxrun', +] diff --git a/tests/functional/test_mipsel_malta.py b/tests/functional/mipsel/test_malta.py index 9ee2884..427e163 100755 --- a/tests/functional/test_mipsel_malta.py +++ b/tests/functional/mipsel/test_malta.py @@ -13,7 +13,7 @@ from qemu_test import QemuSystemTest, LinuxKernelTest, Asset from qemu_test import interrupt_interactive_console_until_pattern from qemu_test import wait_for_console_pattern -from test_mips_malta import mips_check_wheezy +from mips.test_malta import mips_check_wheezy class MaltaMachineConsole(LinuxKernelTest): diff --git a/tests/functional/test_mipsel_replay.py b/tests/functional/mipsel/test_replay.py index 5f4796c..5f4796c 100644..100755 --- a/tests/functional/test_mipsel_replay.py +++ b/tests/functional/mipsel/test_replay.py diff --git a/tests/functional/test_mipsel_tuxrun.py b/tests/functional/mipsel/test_tuxrun.py index d4b39ba..d4b39ba 100755 --- a/tests/functional/test_mipsel_tuxrun.py +++ b/tests/functional/mipsel/test_tuxrun.py diff --git a/tests/functional/test_multiprocess.py b/tests/functional/multiprocess.py index 92d5207..6a06c1e 100755..100644 --- a/tests/functional/test_multiprocess.py +++ b/tests/functional/multiprocess.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python3 +# SPDX-License-Identifier: GPL-2.0-or-later # # Test for multiprocess qemu # @@ -9,33 +9,13 @@ import os import socket -from qemu_test import QemuSystemTest, Asset, wait_for_console_pattern +from qemu_test import QemuSystemTest, wait_for_console_pattern from qemu_test import exec_command, exec_command_and_wait_for_pattern class Multiprocess(QemuSystemTest): KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 ' - ASSET_KERNEL_X86 = Asset( - ('https://archives.fedoraproject.org/pub/archive/fedora/linux' - '/releases/31/Everything/x86_64/os/images/pxeboot/vmlinuz'), - 'd4738d03dbbe083ca610d0821d0a8f1488bebbdccef54ce33e3adb35fda00129') - - ASSET_INITRD_X86 = Asset( - ('https://archives.fedoraproject.org/pub/archive/fedora/linux' - '/releases/31/Everything/x86_64/os/images/pxeboot/initrd.img'), - '3b6cb5c91a14c42e2f61520f1689264d865e772a1f0069e660a800d31dd61fb9') - - ASSET_KERNEL_AARCH64 = Asset( - ('https://archives.fedoraproject.org/pub/archive/fedora/linux' - '/releases/31/Everything/aarch64/os/images/pxeboot/vmlinuz'), - '3ae07fcafbfc8e4abeb693035a74fe10698faae15e9ccd48882a9167800c1527') - - ASSET_INITRD_AARCH64 = Asset( - ('https://archives.fedoraproject.org/pub/archive/fedora/linux' - '/releases/31/Everything/aarch64/os/images/pxeboot/initrd.img'), - '9fd230cab10b1dafea41cf00150e6669d37051fad133bd618d2130284e16d526') - def do_test(self, kernel_asset, initrd_asset, kernel_command_line, machine_type): """Main test method""" @@ -85,19 +65,3 @@ class Multiprocess(QemuSystemTest): proxy_sock.close() remote_sock.close() - - def test_multiprocess(self): - kernel_command_line = self.KERNEL_COMMON_COMMAND_LINE - if self.arch == 'x86_64': - kernel_command_line += 'console=ttyS0 rdinit=/bin/bash' - self.do_test(self.ASSET_KERNEL_X86, self.ASSET_INITRD_X86, - kernel_command_line, 'pc') - elif self.arch == 'aarch64': - kernel_command_line += 'rdinit=/bin/bash console=ttyAMA0' - self.do_test(self.ASSET_KERNEL_AARCH64, self.ASSET_INITRD_AARCH64, - kernel_command_line, 'virt,gic-version=3') - else: - assert False - -if __name__ == '__main__': - QemuSystemTest.main() diff --git a/tests/functional/or1k/meson.build b/tests/functional/or1k/meson.build new file mode 100644 index 0000000..e246e2a --- /dev/null +++ b/tests/functional/or1k/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_or1k_system_thorough = [ + 'replay', + 'sim', +] diff --git a/tests/functional/test_or1k_replay.py b/tests/functional/or1k/test_replay.py index 2b60a93..2b60a93 100755 --- a/tests/functional/test_or1k_replay.py +++ b/tests/functional/or1k/test_replay.py diff --git a/tests/functional/test_or1k_sim.py b/tests/functional/or1k/test_sim.py index f9f0b69..f9f0b69 100755 --- a/tests/functional/test_or1k_sim.py +++ b/tests/functional/or1k/test_sim.py diff --git a/tests/functional/ppc/meson.build b/tests/functional/ppc/meson.build new file mode 100644 index 0000000..3d56201 --- /dev/null +++ b/tests/functional/ppc/meson.build @@ -0,0 +1,22 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_ppc_timeouts = { + '40p' : 240, +} + +tests_ppc_system_quick = [ + 'migration', + '74xx', +] + +tests_ppc_system_thorough = [ + '40p', + 'amiga', + 'bamboo', + 'mac', + 'mpc8544ds', + 'replay', + 'sam460ex', + 'tuxrun', + 'virtex_ml507', +] diff --git a/tests/functional/test_ppc_40p.py b/tests/functional/ppc/test_40p.py index 614972a..614972a 100755 --- a/tests/functional/test_ppc_40p.py +++ b/tests/functional/ppc/test_40p.py diff --git a/tests/functional/test_ppc_74xx.py b/tests/functional/ppc/test_74xx.py index 5386016..5386016 100755 --- a/tests/functional/test_ppc_74xx.py +++ b/tests/functional/ppc/test_74xx.py diff --git a/tests/functional/test_ppc_amiga.py b/tests/functional/ppc/test_amiga.py index 8600e2e..8600e2e 100755 --- a/tests/functional/test_ppc_amiga.py +++ b/tests/functional/ppc/test_amiga.py diff --git a/tests/functional/test_ppc_bamboo.py b/tests/functional/ppc/test_bamboo.py index c634ae7..c634ae7 100755 --- a/tests/functional/test_ppc_bamboo.py +++ b/tests/functional/ppc/test_bamboo.py diff --git a/tests/functional/test_ppc_mac.py b/tests/functional/ppc/test_mac.py index 9e4bc1a..9e4bc1a 100755 --- a/tests/functional/test_ppc_mac.py +++ b/tests/functional/ppc/test_mac.py diff --git a/tests/functional/ppc/test_migration.py b/tests/functional/ppc/test_migration.py new file mode 100755 index 0000000..a869282 --- /dev/null +++ b/tests/functional/ppc/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# ppc migration test + +from migration import MigrationTest + + +class PpcMigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('sam460ex') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('sam460ex') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('sam460ex') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_ppc_mpc8544ds.py b/tests/functional/ppc/test_mpc8544ds.py index 0715410..0715410 100755 --- a/tests/functional/test_ppc_mpc8544ds.py +++ b/tests/functional/ppc/test_mpc8544ds.py diff --git a/tests/functional/test_ppc_replay.py b/tests/functional/ppc/test_replay.py index 8382070..8382070 100755 --- a/tests/functional/test_ppc_replay.py +++ b/tests/functional/ppc/test_replay.py diff --git a/tests/functional/test_ppc_sam460ex.py b/tests/functional/ppc/test_sam460ex.py index 31cf9dd..31cf9dd 100644..100755 --- a/tests/functional/test_ppc_sam460ex.py +++ b/tests/functional/ppc/test_sam460ex.py diff --git a/tests/functional/test_ppc_tuxrun.py b/tests/functional/ppc/test_tuxrun.py index 5458a7f..5458a7f 100755 --- a/tests/functional/test_ppc_tuxrun.py +++ b/tests/functional/ppc/test_tuxrun.py diff --git a/tests/functional/test_ppc_virtex_ml507.py b/tests/functional/ppc/test_virtex_ml507.py index 8fe4354..8fe4354 100755 --- a/tests/functional/test_ppc_virtex_ml507.py +++ b/tests/functional/ppc/test_virtex_ml507.py diff --git a/tests/functional/ppc64/meson.build b/tests/functional/ppc64/meson.build new file mode 100644 index 0000000..842fe0f --- /dev/null +++ b/tests/functional/ppc64/meson.build @@ -0,0 +1,25 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_ppc64_timeouts = { + 'hv' : 1000, + 'mac99' : 120, + 'powernv' : 480, + 'pseries' : 480, + 'replay' : 210, + 'tuxrun' : 420, +} + +tests_ppc64_system_quick = [ + 'migration', +] + +tests_ppc64_system_thorough = [ + 'e500', + 'hv', + 'mac99', + 'powernv', + 'pseries', + 'replay', + 'reverse_debug', + 'tuxrun', +] diff --git a/tests/functional/test_ppc64_e500.py b/tests/functional/ppc64/test_e500.py index f5fcad9..f5fcad9 100755 --- a/tests/functional/test_ppc64_e500.py +++ b/tests/functional/ppc64/test_e500.py diff --git a/tests/functional/test_ppc64_hv.py b/tests/functional/ppc64/test_hv.py index d87f440..d87f440 100755 --- a/tests/functional/test_ppc64_hv.py +++ b/tests/functional/ppc64/test_hv.py diff --git a/tests/functional/test_ppc64_mac99.py b/tests/functional/ppc64/test_mac99.py index dfd9c01..dfd9c01 100755 --- a/tests/functional/test_ppc64_mac99.py +++ b/tests/functional/ppc64/test_mac99.py diff --git a/tests/functional/ppc64/test_migration.py b/tests/functional/ppc64/test_migration.py new file mode 100755 index 0000000..5dfdaaf --- /dev/null +++ b/tests/functional/ppc64/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# ppc migration test + +from migration import MigrationTest + + +class PpcMigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('mac99') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('mac99') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('mac99') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_ppc64_powernv.py b/tests/functional/ppc64/test_powernv.py index 685e217..685e217 100755 --- a/tests/functional/test_ppc64_powernv.py +++ b/tests/functional/ppc64/test_powernv.py diff --git a/tests/functional/test_ppc64_pseries.py b/tests/functional/ppc64/test_pseries.py index 6705793..6705793 100755 --- a/tests/functional/test_ppc64_pseries.py +++ b/tests/functional/ppc64/test_pseries.py diff --git a/tests/functional/test_ppc64_replay.py b/tests/functional/ppc64/test_replay.py index e8c9c4b..e8c9c4b 100755 --- a/tests/functional/test_ppc64_replay.py +++ b/tests/functional/ppc64/test_replay.py diff --git a/tests/functional/test_ppc64_reverse_debug.py b/tests/functional/ppc64/test_reverse_debug.py index 5931ade..5931ade 100755 --- a/tests/functional/test_ppc64_reverse_debug.py +++ b/tests/functional/ppc64/test_reverse_debug.py diff --git a/tests/functional/test_ppc64_tuxrun.py b/tests/functional/ppc64/test_tuxrun.py index e8f79c6..e8f79c6 100755 --- a/tests/functional/test_ppc64_tuxrun.py +++ b/tests/functional/ppc64/test_tuxrun.py diff --git a/tests/functional/qemu_test/ports.py b/tests/functional/qemu_test/ports.py index 631b77a..81174a6 100644 --- a/tests/functional/qemu_test/ports.py +++ b/tests/functional/qemu_test/ports.py @@ -23,8 +23,9 @@ class Ports(): PORTS_END = PORTS_START + PORTS_RANGE_SIZE def __enter__(self): - lock_file = os.path.join(BUILD_DIR, "tests", "functional", "port_lock") - self.lock_fh = os.open(lock_file, os.O_CREAT) + lock_file = os.path.join(BUILD_DIR, "tests", "functional", + f".port_lock.{self.PORTS_START}") + self.lock_fh = os.open(lock_file, os.O_CREAT, mode=0o666) fcntl.flock(self.lock_fh, fcntl.LOCK_EX) return self diff --git a/tests/functional/qemu_test/testcase.py b/tests/functional/qemu_test/testcase.py index 5caf7b1..fbeb171 100644 --- a/tests/functional/qemu_test/testcase.py +++ b/tests/functional/qemu_test/testcase.py @@ -235,6 +235,7 @@ class QemuBaseTest(unittest.TestCase): self.log.removeHandler(self._log_fh) self._log_fh.close() + @staticmethod def main(): warnings.simplefilter("default") os.environ["PYTHONWARNINGS"] = "default" diff --git a/tests/functional/riscv32/meson.build b/tests/functional/riscv32/meson.build new file mode 100644 index 0000000..f3ebbb8 --- /dev/null +++ b/tests/functional/riscv32/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_riscv32_system_quick = [ + 'migration', + 'opensbi', +] + +tests_riscv32_system_thorough = [ + 'tuxrun', +] diff --git a/tests/functional/riscv32/test_migration.py b/tests/functional/riscv32/test_migration.py new file mode 100755 index 0000000..30acbbe --- /dev/null +++ b/tests/functional/riscv32/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# riscv32 migration test + +from migration import MigrationTest + + +class Rv32MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('spike') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('virt') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('spike') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/riscv32/test_opensbi.py b/tests/functional/riscv32/test_opensbi.py new file mode 100755 index 0000000..d1ac706 --- /dev/null +++ b/tests/functional/riscv32/test_opensbi.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Reuse the 64-bit OpenSBI test for RISC-V 32-bit machines + +from riscv64.test_opensbi import RiscvOpenSBI + +if __name__ == '__main__': + RiscvOpenSBI.main() diff --git a/tests/functional/test_riscv32_tuxrun.py b/tests/functional/riscv32/test_tuxrun.py index 3c57020..3c57020 100755 --- a/tests/functional/test_riscv32_tuxrun.py +++ b/tests/functional/riscv32/test_tuxrun.py diff --git a/tests/functional/riscv64/meson.build b/tests/functional/riscv64/meson.build new file mode 100644 index 0000000..c1704d9 --- /dev/null +++ b/tests/functional/riscv64/meson.build @@ -0,0 +1,15 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_riscv64_timeouts = { + 'tuxrun' : 120, +} + +tests_riscv64_system_quick = [ + 'migration', + 'opensbi', +] + +tests_riscv64_system_thorough = [ + 'sifive_u', + 'tuxrun', +] diff --git a/tests/functional/riscv64/test_migration.py b/tests/functional/riscv64/test_migration.py new file mode 100755 index 0000000..2d613a2 --- /dev/null +++ b/tests/functional/riscv64/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# riscv64 migration test + +from migration import MigrationTest + + +class Rv64MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('virt') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('spike') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('virt') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_riscv_opensbi.py b/tests/functional/riscv64/test_opensbi.py index d077e40..d077e40 100755 --- a/tests/functional/test_riscv_opensbi.py +++ b/tests/functional/riscv64/test_opensbi.py diff --git a/tests/functional/test_riscv64_sifive_u.py b/tests/functional/riscv64/test_sifive_u.py index 358ff0d..358ff0d 100755 --- a/tests/functional/test_riscv64_sifive_u.py +++ b/tests/functional/riscv64/test_sifive_u.py diff --git a/tests/functional/test_riscv64_tuxrun.py b/tests/functional/riscv64/test_tuxrun.py index 0d8de36..0d8de36 100755 --- a/tests/functional/test_riscv64_tuxrun.py +++ b/tests/functional/riscv64/test_tuxrun.py diff --git a/tests/functional/rx/meson.build b/tests/functional/rx/meson.build new file mode 100644 index 0000000..6af83a9 --- /dev/null +++ b/tests/functional/rx/meson.build @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_rx_system_thorough = [ + 'gdbsim', +] diff --git a/tests/functional/test_rx_gdbsim.py b/tests/functional/rx/test_gdbsim.py index 4924579..4924579 100755 --- a/tests/functional/test_rx_gdbsim.py +++ b/tests/functional/rx/test_gdbsim.py diff --git a/tests/functional/s390x/meson.build b/tests/functional/s390x/meson.build new file mode 100644 index 0000000..030b116 --- /dev/null +++ b/tests/functional/s390x/meson.build @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_s390x_timeouts = { + 'ccw_virtio' : 420, +} + +tests_s390x_system_thorough = [ + 'ccw_virtio', + 'pxelinux', + 'replay', + 'topology', + 'tuxrun', +] diff --git a/tests/functional/test_s390x_ccw_virtio.py b/tests/functional/s390x/test_ccw_virtio.py index 453711a..453711a 100755 --- a/tests/functional/test_s390x_ccw_virtio.py +++ b/tests/functional/s390x/test_ccw_virtio.py diff --git a/tests/functional/test_s390x_pxelinux.py b/tests/functional/s390x/test_pxelinux.py index 4fc33b8..4fc33b8 100755 --- a/tests/functional/test_s390x_pxelinux.py +++ b/tests/functional/s390x/test_pxelinux.py diff --git a/tests/functional/test_s390x_replay.py b/tests/functional/s390x/test_replay.py index 33b5843..33b5843 100755 --- a/tests/functional/test_s390x_replay.py +++ b/tests/functional/s390x/test_replay.py diff --git a/tests/functional/test_s390x_topology.py b/tests/functional/s390x/test_topology.py index 1b5dc65..1b5dc65 100755 --- a/tests/functional/test_s390x_topology.py +++ b/tests/functional/s390x/test_topology.py diff --git a/tests/functional/test_s390x_tuxrun.py b/tests/functional/s390x/test_tuxrun.py index 8df3c68..8df3c68 100755 --- a/tests/functional/test_s390x_tuxrun.py +++ b/tests/functional/s390x/test_tuxrun.py diff --git a/tests/functional/sh4/meson.build b/tests/functional/sh4/meson.build new file mode 100644 index 0000000..56f824e --- /dev/null +++ b/tests/functional/sh4/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_sh4_timeouts = { + 'tuxrun' : 240, +} + +tests_sh4_system_thorough = [ + 'r2d', + 'tuxrun', +] diff --git a/tests/functional/test_sh4_r2d.py b/tests/functional/sh4/test_r2d.py index 03a64837..03a64837 100755 --- a/tests/functional/test_sh4_r2d.py +++ b/tests/functional/sh4/test_r2d.py diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/sh4/test_tuxrun.py index 1748f8c..1748f8c 100755 --- a/tests/functional/test_sh4_tuxrun.py +++ b/tests/functional/sh4/test_tuxrun.py diff --git a/tests/functional/sh4eb/meson.build b/tests/functional/sh4eb/meson.build new file mode 100644 index 0000000..25e9a6e --- /dev/null +++ b/tests/functional/sh4eb/meson.build @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_sh4eb_system_thorough = [ + 'r2d', +] diff --git a/tests/functional/test_sh4eb_r2d.py b/tests/functional/sh4eb/test_r2d.py index 473093b..473093b 100755 --- a/tests/functional/test_sh4eb_r2d.py +++ b/tests/functional/sh4eb/test_r2d.py diff --git a/tests/functional/sparc/meson.build b/tests/functional/sparc/meson.build new file mode 100644 index 0000000..88732be --- /dev/null +++ b/tests/functional/sparc/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_sparc_system_quick = [ + 'migration', +] + +tests_sparc_system_thorough = [ + 'replay', + 'sun4m', +] diff --git a/tests/functional/sparc/test_migration.py b/tests/functional/sparc/test_migration.py new file mode 100755 index 0000000..dd6d578 --- /dev/null +++ b/tests/functional/sparc/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Sparc migration test + +from migration import MigrationTest + + +class SparcMigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('SS-4') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('SS-5') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('SS-4') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_sparc_replay.py b/tests/functional/sparc/test_replay.py index 865d648..865d648 100755 --- a/tests/functional/test_sparc_replay.py +++ b/tests/functional/sparc/test_replay.py diff --git a/tests/functional/test_sparc_sun4m.py b/tests/functional/sparc/test_sun4m.py index 7cd28eb..7cd28eb 100755 --- a/tests/functional/test_sparc_sun4m.py +++ b/tests/functional/sparc/test_sun4m.py diff --git a/tests/functional/sparc64/meson.build b/tests/functional/sparc64/meson.build new file mode 100644 index 0000000..2e04e7d --- /dev/null +++ b/tests/functional/sparc64/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_sparc64_system_quick = [ + 'migration', +] + +tests_sparc64_system_thorough = [ + 'sun4u', + 'tuxrun', +] diff --git a/tests/functional/sparc64/test_migration.py b/tests/functional/sparc64/test_migration.py new file mode 100755 index 0000000..a8a6c73 --- /dev/null +++ b/tests/functional/sparc64/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Sparc64 migration test + +from migration import MigrationTest + + +class Sparc64MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('sun4u') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('sun4u') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('sun4u') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/test_sparc64_sun4u.py b/tests/functional/sparc64/test_sun4u.py index 27ac289..27ac289 100755 --- a/tests/functional/test_sparc64_sun4u.py +++ b/tests/functional/sparc64/test_sun4u.py diff --git a/tests/functional/test_sparc64_tuxrun.py b/tests/functional/sparc64/test_tuxrun.py index 0d7b43d..0d7b43d 100755 --- a/tests/functional/test_sparc64_tuxrun.py +++ b/tests/functional/sparc64/test_tuxrun.py diff --git a/tests/functional/x86_64/meson.build b/tests/functional/x86_64/meson.build new file mode 100644 index 0000000..d0b4667 --- /dev/null +++ b/tests/functional/x86_64/meson.build @@ -0,0 +1,36 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +test_x86_64_timeouts = { + 'acpi_bits' : 420, + 'intel_iommu': 300, + 'kvm_xen' : 180, + 'netdev_ethtool' : 180, + 'replay' : 480, + 'virtio_balloon': 120, +} + +tests_x86_64_system_quick = [ + 'cpu_model_versions', + 'cpu_queries', + 'mem_addr_space', + 'migration', + 'pc_cpu_hotplug_props', + 'virtio_version', + 'memlock', +] + +tests_x86_64_system_thorough = [ + 'acpi_bits', + 'hotplug_blk', + 'hotplug_cpu', + 'intel_iommu', + 'kvm_xen', + 'linux_initrd', + 'multiprocess', + 'netdev_ethtool', + 'replay', + 'reverse_debug', + 'tuxrun', + 'virtio_balloon', + 'virtio_gpu', +] diff --git a/tests/functional/test_acpi_bits.py b/tests/functional/x86_64/test_acpi_bits.py index 8e0563a..8e0563a 100755 --- a/tests/functional/test_acpi_bits.py +++ b/tests/functional/x86_64/test_acpi_bits.py diff --git a/tests/functional/test_x86_cpu_model_versions.py b/tests/functional/x86_64/test_cpu_model_versions.py index 36c968f..36c968f 100755 --- a/tests/functional/test_x86_cpu_model_versions.py +++ b/tests/functional/x86_64/test_cpu_model_versions.py diff --git a/tests/functional/test_cpu_queries.py b/tests/functional/x86_64/test_cpu_queries.py index b1122a0..b1122a0 100755 --- a/tests/functional/test_cpu_queries.py +++ b/tests/functional/x86_64/test_cpu_queries.py diff --git a/tests/functional/test_x86_64_hotplug_blk.py b/tests/functional/x86_64/test_hotplug_blk.py index 7ddbfef..7ddbfef 100755 --- a/tests/functional/test_x86_64_hotplug_blk.py +++ b/tests/functional/x86_64/test_hotplug_blk.py diff --git a/tests/functional/test_x86_64_hotplug_cpu.py b/tests/functional/x86_64/test_hotplug_cpu.py index 7b9200a..7b9200a 100755 --- a/tests/functional/test_x86_64_hotplug_cpu.py +++ b/tests/functional/x86_64/test_hotplug_cpu.py diff --git a/tests/functional/test_intel_iommu.py b/tests/functional/x86_64/test_intel_iommu.py index 62268d6..62268d6 100755 --- a/tests/functional/test_intel_iommu.py +++ b/tests/functional/x86_64/test_intel_iommu.py diff --git a/tests/functional/test_x86_64_kvm_xen.py b/tests/functional/x86_64/test_kvm_xen.py index a5d4450..a5d4450 100755 --- a/tests/functional/test_x86_64_kvm_xen.py +++ b/tests/functional/x86_64/test_kvm_xen.py diff --git a/tests/functional/test_linux_initrd.py b/tests/functional/x86_64/test_linux_initrd.py index 2207f83..2207f83 100755 --- a/tests/functional/test_linux_initrd.py +++ b/tests/functional/x86_64/test_linux_initrd.py diff --git a/tests/functional/test_mem_addr_space.py b/tests/functional/x86_64/test_mem_addr_space.py index 61b4a19..61b4a19 100755 --- a/tests/functional/test_mem_addr_space.py +++ b/tests/functional/x86_64/test_mem_addr_space.py diff --git a/tests/functional/test_memlock.py b/tests/functional/x86_64/test_memlock.py index 2b515ff..2b515ff 100755 --- a/tests/functional/test_memlock.py +++ b/tests/functional/x86_64/test_memlock.py diff --git a/tests/functional/x86_64/test_migration.py b/tests/functional/x86_64/test_migration.py new file mode 100755 index 0000000..f3a517a --- /dev/null +++ b/tests/functional/x86_64/test_migration.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# x86_64 migration test + +from migration import MigrationTest + + +class X8664MigrationTest(MigrationTest): + + def test_migration_with_tcp_localhost(self): + self.set_machine('microvm') + self.migration_with_tcp_localhost() + + def test_migration_with_unix(self): + self.set_machine('microvm') + self.migration_with_unix() + + def test_migration_with_exec(self): + self.set_machine('microvm') + self.migration_with_exec() + + +if __name__ == '__main__': + MigrationTest.main() diff --git a/tests/functional/x86_64/test_multiprocess.py b/tests/functional/x86_64/test_multiprocess.py new file mode 100755 index 0000000..756629d --- /dev/null +++ b/tests/functional/x86_64/test_multiprocess.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Test for multiprocess qemu on x86 + +from multiprocess import Multiprocess +from qemu_test import Asset + + +class X86Multiprocess(Multiprocess): + + ASSET_KERNEL_X86 = Asset( + ('https://archives.fedoraproject.org/pub/archive/fedora/linux' + '/releases/31/Everything/x86_64/os/images/pxeboot/vmlinuz'), + 'd4738d03dbbe083ca610d0821d0a8f1488bebbdccef54ce33e3adb35fda00129') + + ASSET_INITRD_X86 = Asset( + ('https://archives.fedoraproject.org/pub/archive/fedora/linux' + '/releases/31/Everything/x86_64/os/images/pxeboot/initrd.img'), + '3b6cb5c91a14c42e2f61520f1689264d865e772a1f0069e660a800d31dd61fb9') + + def test_multiprocess(self): + kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE + + 'console=ttyS0 rdinit=/bin/bash') + self.do_test(self.ASSET_KERNEL_X86, self.ASSET_INITRD_X86, + kernel_command_line, 'pc') + + +if __name__ == '__main__': + Multiprocess.main() diff --git a/tests/functional/test_netdev_ethtool.py b/tests/functional/x86_64/test_netdev_ethtool.py index ee1a397..ee1a397 100755 --- a/tests/functional/test_netdev_ethtool.py +++ b/tests/functional/x86_64/test_netdev_ethtool.py diff --git a/tests/functional/test_pc_cpu_hotplug_props.py b/tests/functional/x86_64/test_pc_cpu_hotplug_props.py index 2bed8ad..2bed8ad 100755 --- a/tests/functional/test_pc_cpu_hotplug_props.py +++ b/tests/functional/x86_64/test_pc_cpu_hotplug_props.py diff --git a/tests/functional/test_x86_64_replay.py b/tests/functional/x86_64/test_replay.py index 27287d4..27287d4 100755 --- a/tests/functional/test_x86_64_replay.py +++ b/tests/functional/x86_64/test_replay.py diff --git a/tests/functional/test_x86_64_reverse_debug.py b/tests/functional/x86_64/test_reverse_debug.py index d713e91..d713e91 100755 --- a/tests/functional/test_x86_64_reverse_debug.py +++ b/tests/functional/x86_64/test_reverse_debug.py diff --git a/tests/functional/test_x86_64_tuxrun.py b/tests/functional/x86_64/test_tuxrun.py index fcbc62b..fcbc62b 100755 --- a/tests/functional/test_x86_64_tuxrun.py +++ b/tests/functional/x86_64/test_tuxrun.py diff --git a/tests/functional/test_virtio_balloon.py b/tests/functional/x86_64/test_virtio_balloon.py index 5877b6c..5877b6c 100755 --- a/tests/functional/test_virtio_balloon.py +++ b/tests/functional/x86_64/test_virtio_balloon.py diff --git a/tests/functional/test_virtio_gpu.py b/tests/functional/x86_64/test_virtio_gpu.py index be96de2..be96de2 100755 --- a/tests/functional/test_virtio_gpu.py +++ b/tests/functional/x86_64/test_virtio_gpu.py diff --git a/tests/functional/test_virtio_version.py b/tests/functional/x86_64/test_virtio_version.py index a5ea732..a5ea732 100755 --- a/tests/functional/test_virtio_version.py +++ b/tests/functional/x86_64/test_virtio_version.py diff --git a/tests/functional/xtensa/meson.build b/tests/functional/xtensa/meson.build new file mode 100644 index 0000000..d61d82a --- /dev/null +++ b/tests/functional/xtensa/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +tests_xtensa_system_thorough = [ + 'lx60', + 'replay', +] diff --git a/tests/functional/test_xtensa_lx60.py b/tests/functional/xtensa/test_lx60.py index 147c920..147c920 100755 --- a/tests/functional/test_xtensa_lx60.py +++ b/tests/functional/xtensa/test_lx60.py diff --git a/tests/functional/test_xtensa_replay.py b/tests/functional/xtensa/test_replay.py index eb00a3b..eb00a3b 100755 --- a/tests/functional/test_xtensa_replay.py +++ b/tests/functional/xtensa/test_replay.py |