The I/O tests integration previously exclusively tested block formats and now also covers the NBD protocol. Replace references to 'format' with 'driver', as a generic term to collectively apply to either a format or protocol.
Reviewed-by: Thomas Huth <[email protected]> Signed-off-by: Daniel P. Berrangé <[email protected]> --- docs/devel/testing/main.rst | 13 +++++++------ tests/Makefile.include | 4 ++-- tests/qemu-iotests/meson.build | 24 ++++++++++++------------ 3 files changed, 21 insertions(+), 20 deletions(-) diff --git a/docs/devel/testing/main.rst b/docs/devel/testing/main.rst index 843592e3e0..c0321d1d25 100644 --- a/docs/devel/testing/main.rst +++ b/docs/devel/testing/main.rst @@ -237,7 +237,8 @@ check-block ~~~~~~~~~~~ There are a variety of ways to exercise the block layer I/O tests -via make targets. +via make targets for a selection of formats / protocols (collectively +referred to as ``drivers`` below). A default ``make check`` or ``make check-block`` command will exercise the ``qcow2`` format, using the tests tagged into the ``auto`` group @@ -246,14 +247,14 @@ only. These targets accept the ``SPEED`` variable to augment the set of tests to run. A slightly more comprehensive test plan can be run by defining ``SPEED=slow``, which enables all tests for the ``qcow2`` and ``raw`` -formats. The most comprehensive test plan can be run by defining -``SPEED=thorough``, which enables all available tests for the formats +drivers. The most comprehensive test plan can be run by defining +``SPEED=thorough``, which enables all available tests for the drivers ``luks``, ``nbd``, ``parallels``, ``qcow2``, ``qed``, ``raw``, ``vdi``, ``vhdx``, ``vmdk``, and ``vpc``. -Each of formats also has its own dedicated make target, named -``make check-block-$FORMAT`` which will run all available tests for -the designated format and does not require the ``SPEED`` variable +Each of drivers also has its own dedicated make target, named +``make check-block-$DRIVER`` which will run all available tests for +the designated driver and does not require the ``SPEED`` variable to be set. See the "QEMU iotests" section below for more information on the diff --git a/tests/Makefile.include b/tests/Makefile.include index a820980bbe..a063a1d60f 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -14,8 +14,8 @@ check-help: @echo " $(MAKE) check-unit Run qobject tests" @echo " $(MAKE) check-qapi-schema Run QAPI schema tests" @echo " $(MAKE) check-tracetool Run tracetool generator tests" - @echo " $(MAKE) check-block Run block tests (all formats)" - @echo " $(MAKE) check-block-FORMAT Run block tests (only for FORMAT)" + @echo " $(MAKE) check-block Run block tests (all formats/protocols)" + @echo " $(MAKE) check-block-DRIVER Run block tests (only for format/protocol 'DRIVER')" ifneq ($(filter $(all-check-targets), check-softfloat),) @echo " $(MAKE) check-softfloat Run FPU emulation tests" @echo " $(MAKE) check-tcg Run TCG tests" diff --git a/tests/qemu-iotests/meson.build b/tests/qemu-iotests/meson.build index 744d0b6e88..bc6132a0f7 100644 --- a/tests/qemu-iotests/meson.build +++ b/tests/qemu-iotests/meson.build @@ -12,7 +12,7 @@ qemu_iotests_binaries = [qemu_img, qemu_io, qemu_nbd, qsd] qemu_iotests_env = {'PYTHON': python.full_path()} # If altering this definition, also update docs/devel/testing/main.rst # section on 'check-block' targets to reflect the changes -qemu_iotests_formats = { +qemu_iotests_drivers = { 'qcow2': 'quick', 'raw': 'slow', 'luks': 'thorough', @@ -33,12 +33,12 @@ endforeach qemu_iotests_check_cmd = files('check') -foreach format, speed: qemu_iotests_formats - # Formats tagged 'quick' get the subset of tests in the 'auto' +foreach driver, speed: qemu_iotests_drivers + # Drivers tagged 'quick' get the subset of tests in the 'auto' # group, run by default with 'make check' / 'make check-block' seen = [] if speed == 'quick' - args = ['-tap', '-' + format, '-g', 'auto'] + args = ['-tap', '-' + driver, '-g', 'auto'] suites = ['block'] rc = run_command( @@ -49,13 +49,13 @@ foreach format, speed: qemu_iotests_formats foreach item: rc.stdout().strip().split() seen += item args = [qemu_iotests_check_cmd, - '-tap', '-' + format, item, + '-tap', '-' + driver, item, '--source-dir', meson.current_source_dir(), '--build-dir', meson.current_build_dir()] # Some individual tests take as long as 45 seconds # Bump the timeout to 3 minutes for some headroom # on slow machines to minimize spurious failures - test('io-' + format + '-' + item, + test('io-' + driver + '-' + item, python, args: args, depends: qemu_iotests_binaries, @@ -66,9 +66,9 @@ foreach format, speed: qemu_iotests_formats endforeach endif - # Every format gets put in the format specific suite - suites = ['block-' + format + '-optional'] - # Any format tagged quick or slow also gets added to slow + # Every driver gets put in the driver specific suite + suites = ['block-' + driver + '-optional'] + # Any driver tagged quick or slow also gets added to slow # otherwise its tagged thorough if speed != 'thorough' suites += ['block-slow'] @@ -76,7 +76,7 @@ foreach format, speed: qemu_iotests_formats suites += ['block-thorough'] endif - args = ['-tap', '-' + format] + args = ['-tap', '-' + driver] rc = run_command( [python, qemu_iotests_check_cmd] + args + ['-n'], @@ -91,13 +91,13 @@ foreach format, speed: qemu_iotests_formats endif args = [qemu_iotests_check_cmd, - '-tap', '-' + format, item, + '-tap', '-' + driver, item, '--source-dir', meson.current_source_dir(), '--build-dir', meson.current_build_dir()] # Some individual tests take as long as 45 seconds # Bump the timeout to 3 minutes for some headroom # on slow machines to minimize spurious failures - test('io-' + format + '-' + item, + test('io-' + driver + '-' + item, python, args: args, depends: qemu_iotests_binaries, -- 2.54.0
