qemu/tests/functional
Thomas Huth 5c2bae2155 tests/functional: Convert the SMMU test to the functional framework
This test was using cloudinit and a "dnf install" command in the guest
to exercise the NIC with SMMU enabled. Since we don't have the cloudinit
stuff in the functional framework and we should not rely on having access
to external networks (once our ASSETs have been cached), we rather boot
into the initrd first, manually mount the root disk and then use the
check_http_download() function from the functional framework here instead
for testing whether the network works as expected.

Unfortunately, there seems to be a small race when using the files
from Fedora 33: To enter the initrd shell, we have to send a "return"
once. But it does not seem to work if we send it too early. Using a
sleep(0.2) makes it work reliably for me, but to make it even more
unlikely to trigger this situation, let's better limit the Fedora 33
tests to only run with KVM.

Finally, while we're at it, we also add some lines for testing writes
to the hard disk, as we already do it in the test_intel_iommu test.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Message-ID: <20250414113031.151105-14-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2025-04-23 07:51:25 +02:00
..
acpi-bits tests/functional: Convert the acpi-bits test into a standalone test 2024-09-04 11:14:33 +02:00
qemu_test tests/functional: Move the check for the parameters from avocado to functional 2025-04-23 07:51:25 +02:00
aspeed.py tests/functional: Update OpenBMC image of romulus machine 2025-03-09 14:36:52 +01:00
meson.build tests/functional: Convert the SMMU test to the functional framework 2025-04-23 07:51:25 +02:00
replay_kernel.py tests/functional: Provide a proper name for the VMs in the replay tests 2025-02-26 07:43:25 +01:00
reverse_debugging.py tests/functional: Convert reverse_debugging tests to the functional framework 2025-04-23 07:51:25 +02:00
test_aarch64_aspeed.py tests/functional/aspeed: Add test case for AST2700 A1 2025-03-09 14:36:53 +01:00
test_aarch64_raspi3.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_aarch64_raspi4.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_aarch64_replay.py tests/functional: Use the tuxrun kernel for the aarch64 replay test 2025-04-23 07:51:25 +02:00
test_aarch64_reverse_debug.py tests/functional: Convert reverse_debugging tests to the functional framework 2025-04-23 07:51:25 +02:00
test_aarch64_rme_sbsaref.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_aarch64_rme_virt.py tests/functional/test_aarch64_rme_virt: fix sporadic failure 2025-04-03 16:11:09 -07:00
test_aarch64_sbsaref.py licenses: Remove SPDX tags not being license identifier for Linaro 2025-01-30 13:01:22 +03:00
test_aarch64_sbsaref_alpine.py trivial patches for 2025-01-30 2025-01-30 15:11:49 -05:00
test_aarch64_sbsaref_freebsd.py trivial patches for 2025-01-30 2025-01-30 15:11:49 -05:00
test_aarch64_smmu.py tests/functional: Convert the SMMU test to the functional framework 2025-04-23 07:51:25 +02:00
test_aarch64_tcg_plugins.py tests/functional: Allow running TCG plugins tests on non-Linux/BSD hosts 2025-03-10 10:30:00 +00:00
test_aarch64_tuxrun.py tests/functional: update the aarch64 tuxrun tests 2024-11-25 10:27:02 +00:00
test_aarch64_virt.py tests/functional: move aarch64 GPU test into own file 2025-03-10 10:30:00 +00:00
test_aarch64_virt_gpu.py tests/functional/test_aarch64_virt_gpu: Skip if "dbus" display isn't available 2025-03-27 08:59:35 +01:00
test_aarch64_xen.py tests/functional: Convert the aarch64 xen test to the functional framework 2025-02-10 19:54:01 +01:00
test_aarch64_xlnx_versal.py tests/functional: Convert the xlnx_versal_virt avocado test 2024-12-11 09:18:39 +01:00
test_acpi_bits.py tests/functional: remove all class level fields 2025-03-19 07:41:32 +01:00
test_alpha_clipper.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_alpha_replay.py tests/functional: Convert the alpha replay avocado tests 2025-02-26 07:43:25 +01:00
test_arm_aspeed_ast1030.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_aspeed_ast2500.py test/functional: Update buildroot images to 2024.11 2025-01-27 09:38:15 +01:00
test_arm_aspeed_ast2600.py test/functional: Update buildroot images to 2024.11 2025-01-27 09:38:15 +01:00
test_arm_aspeed_bletchley.py tests/functional: Introduce a bletchley machine test 2025-03-09 14:36:52 +01:00
test_arm_aspeed_palmetto.py tests/functional: Update OpenBMC image of palmetto machine 2025-03-09 14:36:52 +01:00
test_arm_aspeed_rainier.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_aspeed_romulus.py tests/functional: Update OpenBMC image of romulus machine 2025-03-09 14:36:52 +01:00
test_arm_aspeed_witherspoon.py tests/functional: Introduce a witherspoon machine test 2025-03-09 14:36:52 +01:00
test_arm_bflt.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_bpim2u.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_arm_canona1100.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_collie.py tests/functional: remove many unused imports 2024-12-17 19:39:53 +01:00
test_arm_cubieboard.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_arm_emcraft_sf2.py tests/functional: switch over to using self.scratch_file() 2024-12-17 19:39:53 +01:00
test_arm_integratorcp.py tests/functional: switch over to using self.scratch_file() 2024-12-17 19:39:53 +01:00
test_arm_microbit.py tests/functional: Add a test for the arm microbit machine 2025-01-28 18:40:19 +00:00
test_arm_orangepi.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_arm_quanta_gsj.py tests/functional: Add a decorator for skipping long running tests 2025-01-30 10:50:56 +01:00
test_arm_raspi2.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_arm_replay.py tests/functional: Convert the arm replay avocado tests 2025-02-26 07:43:25 +01:00
test_arm_smdkc210.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_arm_sx1.py tests/functional/test_arm_sx1: Check whether the serial console is working 2025-03-07 10:08:19 +00:00
test_arm_tuxrun.py tests/functional: update the arm tuxrun tests 2025-01-10 11:16:47 +00:00
test_arm_vexpress.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_virt.py tests/functional: Convert the arm virt avocado test 2024-12-17 20:29:03 +01:00
test_avr_mega2560.py tests/functional: Convert some tests that download files via fetch_asset() 2024-09-04 11:11:31 +02:00
test_cpu_queries.py tests/functional: Convert simple avocado tests into standalone python tests 2024-09-04 10:52:29 +02:00
test_empty_cpu_model.py tests/functional: Convert simple avocado tests into standalone python tests 2024-09-04 10:52:29 +02:00
test_hppa_seabios.py tests: Add functional tests for HPPA machines 2025-01-13 17:16:04 +01:00
test_i386_replay.py tests/functional: Convert the i386 replay avocado test 2025-04-23 07:51:25 +02:00
test_i386_tuxrun.py tests/functional: update the i386 tuxrun tests 2025-01-10 11:16:52 +00:00
test_info_usernet.py tests/functional: Add a helper function for retrieving the hostfwd port 2024-12-17 20:33:29 +01:00
test_intel_iommu.py tests/functional: Move the code for testing HTTP downloads to a common function 2025-03-07 07:50:19 +01:00
test_linux_initrd.py tests/functional: switch to new test skip decorators 2024-12-17 19:39:53 +01:00
test_loongarch64_virt.py tests/functional: Fix the running test case causes loongarch64 to hang 2024-11-27 09:17:15 +01:00
test_m68k_mcf5208evb.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_m68k_nextcube.py tests/functional: switch over to using self.scratch_file() 2024-12-17 19:39:53 +01:00
test_m68k_q800.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_m68k_replay.py tests/functional: Convert the m68k replay avocado tests 2025-02-26 07:43:25 +01:00
test_m68k_tuxrun.py tests/functional: add a m68k tuxrun tests 2025-01-10 11:16:59 +00:00
test_mem_addr_space.py tests/functional: skip memaddr tests on 32-bit builds 2025-03-07 07:50:19 +01:00
test_microblaze_replay.py tests/functional: Convert the microblaze replay avocado tests 2025-02-26 07:43:25 +01:00
test_microblaze_s3adsp1800.py tests/functional: Have microblaze tests inherit common parent class 2025-02-24 10:44:54 +01:00
test_microblazeel_s3adsp1800.py tests/functional: Have microblaze tests inherit common parent class 2025-02-24 10:44:54 +01:00
test_migration.py tests/functional/test_migration: Use "ncat" instead of "nc" in the exec test 2025-03-19 13:28:34 +01:00
test_mips64_malta.py tests/functional: Convert the 64-bit big endian Wheezy mips test 2025-04-23 07:51:25 +02:00
test_mips64_tuxrun.py tests/functional: update the mips64 tuxrun tests 2025-01-10 11:17:14 +00:00
test_mips64el_fuloong2e.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_mips64el_loongson3v.py tests/functional: switch to new test skip decorators 2024-12-17 19:39:53 +01:00
test_mips64el_malta.py tests/functional: Convert the 64-bit little endian Wheezy mips test 2025-04-23 07:51:25 +02:00
test_mips64el_replay.py tests/functional/test_mips64el_malta: Convert the mips64el replay tests 2025-01-30 10:51:20 +01:00
test_mips64el_tuxrun.py tests/functional: update the mips64el tuxrun tests 2025-01-10 11:17:19 +00:00
test_mips_malta.py tests/functional: Convert the 32-bit big endian Wheezy mips test 2025-04-23 07:51:25 +02:00
test_mips_replay.py tests/functional/test_mips_malta: Convert the mips big endian replay tests 2025-01-30 10:51:24 +01:00
test_mips_tuxrun.py tests/functional: update the mips32 tuxrun tests 2025-01-10 11:17:03 +00:00
test_mipsel_malta.py tests/functional: Convert the 32-bit little endian Wheezy mips test 2025-04-23 07:51:25 +02:00
test_mipsel_replay.py tests/functional/test_mipsel_malta: Convert the mipsel replay tests 2025-01-30 10:51:17 +01:00
test_mipsel_tuxrun.py tests/functional: update the mips32el tuxrun tests 2025-01-10 11:17:10 +00:00
test_multiprocess.py tests/functional: Convert the multiprocess avocado test into a standalone test 2024-09-11 09:49:12 +02:00
test_netdev_ethtool.py tests/functional: Correct typo in test_netdev_ethtool.py SPDX tag 2024-09-20 10:11:59 +03:00
test_or1k_replay.py tests/functional: Convert the or1k replay avocado tests 2025-02-26 07:43:25 +01:00
test_or1k_sim.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_pc_cpu_hotplug_props.py tests/functional: Convert simple avocado tests into standalone python tests 2024-09-04 10:52:29 +02:00
test_ppc64_e500.py tests/functional: Require 'user' netdev for ppc64 e500 test 2025-03-12 18:15:30 +01:00
test_ppc64_hv.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_ppc64_mac99.py tests/functional: Add a ppc64 mac99 test 2025-01-30 10:38:51 +01:00
test_ppc64_powernv.py tests/functional: Convert the powernv tests from boot_linux_console.py 2024-09-24 13:45:06 +02:00
test_ppc64_pseries.py tests/functional: Convert most ppc avocado tests into standalone tests 2024-09-04 11:14:33 +02:00
test_ppc64_replay.py tests/functional/test_ppc64_replay: Mark the e500 test as flaky 2025-03-27 08:59:35 +01:00
test_ppc64_reverse_debug.py tests/functional: Convert reverse_debugging tests to the functional framework 2025-04-23 07:51:25 +02:00
test_ppc64_tuxrun.py tests/functional: reduce tuxrun maxmem to work on 32-bit hosts 2025-03-06 08:10:04 +01:00
test_ppc_40p.py tests/functional: Extend PPC 40p test with Linux boot 2025-01-30 10:39:37 +01:00
test_ppc_74xx.py tests/functional: Convert avocado tests that just need a small adjustment 2024-09-04 10:52:29 +02:00
test_ppc_amiga.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_ppc_bamboo.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_ppc_mac.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_ppc_mpc8544ds.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_ppc_replay.py tests/functional: Convert the 32-bit ppc replay avocado tests 2025-02-26 07:43:25 +01:00
test_ppc_sam460ex.py tests/functional: Add a ppc sam460ex test 2025-02-11 13:27:07 +01:00
test_ppc_tuxrun.py tests/functional: update the ppc32 tuxrun tests 2025-01-10 11:17:22 +00:00
test_ppc_virtex_ml507.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_riscv32_tuxrun.py tests/functional: update the riscv32 tuxrun tests 2025-01-10 11:17:37 +00:00
test_riscv64_tuxrun.py tests/functional: update the riscv64 tuxrun tests 2025-01-10 11:17:41 +00:00
test_riscv_opensbi.py tests/functional: Convert the riscv_opensbi avocado test into a standalone test 2024-11-08 06:13:34 +01:00
test_rx_gdbsim.py tests/functional/test_rx_gdbsim: Use stable URL for test_linux_sash 2025-01-02 08:58:08 +01:00
test_s390x_ccw_virtio.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_s390x_replay.py tests/functional: Convert the s390x replay avocado tests 2025-02-26 07:43:25 +01:00
test_s390x_topology.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_s390x_tuxrun.py tests/functional: update the s390x tuxrun tests 2025-01-10 11:17:45 +00:00
test_sh4_r2d.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_sh4_tuxrun.py tests/functional: remove unused system imports 2024-12-11 09:18:39 +01:00
test_sh4eb_r2d.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_sparc64_sun4u.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_sparc64_tuxrun.py tests/functional: update the sparc64 tuxrun tests 2025-01-10 11:17:49 +00:00
test_sparc_replay.py tests/functional: Convert the sparc replay avocado test 2025-02-26 07:43:25 +01:00
test_sparc_sun4m.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_version.py tests/functional: Convert avocado tests that just need a small adjustment 2024-09-04 10:52:29 +02:00
test_virtio_balloon.py tests/functional/test_virtio_balloon: Only use KVM for running this test 2025-03-07 09:24:00 +01:00
test_virtio_gpu.py tests/functional: switch over to using self.build_file(...) 2024-12-17 19:39:53 +01:00
test_virtio_version.py tests/functional: remove unused system imports 2024-12-11 09:18:39 +01:00
test_vnc.py tests/functional/test_vnc: skip test if no crypto backend available 2025-04-23 07:51:25 +02:00
test_x86_64_hotplug_blk.py tests/functional: Convert the hotplug_blk avocado test 2025-02-10 19:54:15 +01:00
test_x86_64_hotplug_cpu.py tests/functional/test_x86_64_hotplug_cpu: Fix race condition during unplug 2025-01-07 15:02:46 +01:00
test_x86_64_kvm_xen.py tests/functional: Add missing require_netdev('user') statements 2025-03-27 08:59:35 +01:00
test_x86_64_replay.py tests/functional: Use the tuxrun kernel for the x86 replay test 2025-04-23 07:51:25 +02:00
test_x86_64_reverse_debug.py tests/functional: Convert reverse_debugging tests to the functional framework 2025-04-23 07:51:25 +02:00
test_x86_64_tuxrun.py tests/functional: update the x86_64 tuxrun tests 2025-01-10 11:17:52 +00:00
test_x86_cpu_model_versions.py tests/functional: Convert the x86_cpu_model_versions test 2024-09-04 11:14:33 +02:00
test_xtensa_lx60.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_xtensa_replay.py tests/functional: Convert the xtensa replay test to the functional framework 2025-02-26 07:43:25 +01:00