@samitouri / QOSamiQemu / commits / 06c3a0b2aa

iotests: add a meson suite / make target per block I/O tests format

Currently each block format is classified as either 'quick', 'slow' or 'thorough' and this controls whether its I/O tests are added to the meson suites 'block-quick', 'block-slow' or 'block-thorough'. This suites are exposed the 'check-block' make target, accepting the optional SPEED variable. As we add more formats to the 'thorough' group, however, it becomes increasingly large and time consuming to run. What is needed is a make target that can exercise all tests for an individual format, regardless of speed classification. This makes use of the previous enhancement to mtest2make.py to introduce new meson suites 'block-$FORMAT-optional', which translate to new top level make targets 'check-block-$FORMAT'. These new targets always run all tests and as such do not need the SPEED variable to be set, but are not triggered by 'make check' or 'make check-block'. Reviewed-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Daniel P. Berrangé committed Sep 12, 2025 at 15:06 UTC 06c3a0b2aaf5cdb53ba432f5767a5584db70e031
2 files changed +4 -2
tests/Makefile.include
+2 -1
@@ -14,7 +14,8 @@ check-help:
14 @echo " $(MAKE) check-unit Run qobject tests"
15 @echo " $(MAKE) check-qapi-schema Run QAPI schema tests"
16 @echo " $(MAKE) check-tracetool Run tracetool generator tests"
17 - @echo " $(MAKE) check-block Run block tests"
17 + @echo " $(MAKE) check-block Run block tests (all formats)"
18 + @echo " $(MAKE) check-block-FORMAT Run block tests (only for FORMAT)"
19 ifneq ($(filter $(all-check-targets), check-softfloat),)
20 @echo " $(MAKE) check-softfloat Run FPU emulation tests"
21 @echo " $(MAKE) check-tcg Run TCG tests"
tests/qemu-iotests/meson.build
+2 -1
@@ -62,7 +62,8 @@ foreach format, speed: qemu_iotests_formats
62 endforeach
63 endif
64
65 - suites = []
65 + # Every format gets put in the format specific suite
66 + suites = ['block-' + format + '-optional']
67 # Any format tagged quick or slow also gets added to slow
68 # otherwise its tagged thorough
69 if speed != 'thorough'