qemu/tests/functional
Thomas Huth b7edbbf432 tests/functional: Extract the find_free_ports() function into a helper file
We'll need this functionality in other functional tests, too, so
let's extract it into the qemu_test module.
Also add  an __enter__ and __exit__ function that can be used for
using this functionality in a locked context, so that tests that
are running in parallel don't try to compete for the same ports
later.
Also make sure to only use ports in the "Dynamic Ports" range
(see https://www.rfc-editor.org/rfc/rfc6335) and "randomize" the
start of the probed range with the PID of the test process to
further avoid possible clashes with other competing processes.

Message-ID: <20241218131439.255841-5-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2025-01-02 08:58:08 +01: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: Extract the find_free_ports() function into a helper file 2025-01-02 08:58:08 +01:00
aspeed.py tests/functional: Introduce a specific test for ast2500 SoC 2024-12-11 07:25:53 +01:00
meson.build tests/functional: Convert the vnc test 2025-01-02 07:44:28 +01:00
test_aarch64_aspeed.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39: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_sbsaref.py * Lots of functional test improvements (clean-ups, don't fail on 2024-12-18 20:24:51 -05:00
test_aarch64_sbsaref_alpine.py tests/functional: remove many unused imports 2024-12-17 19:39:53 +01:00
test_aarch64_sbsaref_freebsd.py tests/functional: remove many unused imports 2024-12-17 19:39:53 +01:00
test_aarch64_tcg_plugins.py tests/functional: Convert the tcg_plugins test 2024-11-04 14:16:12 +01: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: replace 'run_cmd' with subprocess helpers 2024-12-17 19:39:53 +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: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_alpha_clipper.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +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 tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_aspeed_ast2600.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_arm_aspeed_palmetto.py tests/functional: add execute permission to aspeed tests 2024-12-17 19:39:53 +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: add execute permission to aspeed tests 2024-12-17 19:39:53 +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: convert tests to new uncompress helper 2024-12-17 19:39:53 +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: convert tests to new uncompress helper 2024-12-17 19:39:53 +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_orangepi.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_arm_quanta_gsj.py tests/functional: Convert the quanta-gsj avocado test 2024-12-17 20:26:33 +01:00
test_arm_raspi2.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +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: remove many unused imports 2024-12-17 19:39:53 +01:00
test_arm_tuxrun.py tests/functional: Convert the Avocado arm tuxrun tests 2024-10-21 16:31:06 +02: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_i386_tuxrun.py tests/functional: Convert the Avocado i386 tuxrun test 2024-10-21 16:32:16 +02: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: Convert the intel_iommu avocado test 2024-12-17 20:48:01 +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_mem_addr_space.py tests/functional: Convert simple avocado tests into standalone python tests 2024-09-04 10:52:29 +02:00
test_microblaze_s3adsp1800.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_microblazeel_s3adsp1800.py tests/functional: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_mips64_tuxrun.py tests/functional: Convert the Avocado mips64 tuxrun test 2024-10-21 16:38:07 +02: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 tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_mips64el_tuxrun.py tests/functional: Convert the Avocado mips64el tuxrun test 2024-10-21 16:39:41 +02:00
test_mips_malta.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_mips_tuxrun.py tests/functional: Convert the Avocado mips tuxrun test 2024-10-21 16:35:59 +02:00
test_mipsel_malta.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_mipsel_tuxrun.py tests/functional: Convert the Avocado mipsel tuxrun test 2024-10-21 16:36:58 +02: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_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: convert tests to new archive_extract helper 2024-12-17 19:39:53 +01:00
test_ppc64_hv.py tests/functional: switch over to using self.scratch_file() 2024-12-17 19:39:53 +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_tuxrun.py tests/functional: replace 'run_cmd' with subprocess helpers 2024-12-17 19:39:53 +01:00
test_ppc_40p.py tests/functional: switch to new test skip decorators 2024-12-17 19:39:53 +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_405.py tests/functional: Convert some tests that download files via fetch_asset() 2024-09-04 11:11:31 +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_tuxrun.py tests/functional: Convert the Avocado ppc32 tuxrun test 2024-10-21 16:40:09 +02: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: Convert the Avocado riscv32 tuxrun tests 2024-10-21 16:31:15 +02:00
test_riscv64_tuxrun.py tests/functional: Convert the RV32-on-RV64 riscv test 2024-11-07 13:12:58 +10: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: convert tests to new uncompress helper 2024-12-17 19:39:53 +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_topology.py tests/functional: convert tests to new uncompress helper 2024-12-17 19:39:53 +01:00
test_s390x_tuxrun.py tests/functional: Convert the Avocado s390x tuxrun test 2024-10-21 16:28:59 +02: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: Convert the Avocado sparc64 tuxrun test 2024-10-21 16:28:59 +02: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_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: Extract the find_free_ports() function into a helper file 2025-01-02 08:58:08 +01:00
test_x86_64_hotplug_cpu.py tests/functional: Convert the hotplug_cpu avocado test 2024-12-17 20:52:12 +01:00
test_x86_64_tuxrun.py tests/functional: Convert the Avocado x86_64 tuxrun test 2024-10-21 16:32:20 +02: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