[PATCH 3/3] test: Added caps, xml2argv and xml2xml tests.

Peter Krempa pkrempa at redhat.com
Mon Jan 3 13:26:48 UTC 2022


On Thu, Dec 30, 2021 at 08:01:45 +0200, Andrew Melnychenko wrote:
> Added caps tests for qemu 5.2+.
> Added rss, hash and rss+hash xml2argv tests.
> virtio-options tests was used for xml2xml test.
> 
> Signed-off-by: Andrew Melnychenko <andrew at daynix.com>
> ---
>  .../caps_5.1.0.x86_64.xml                     |  1 +
>  .../caps_5.2.0.aarch64.xml                    |  1 +
>  .../qemucapabilitiesdata/caps_5.2.0.ppc64.xml |  1 +
>  .../caps_5.2.0.riscv64.xml                    |  1 +
>  .../qemucapabilitiesdata/caps_5.2.0.s390x.xml |  1 +
>  .../caps_5.2.0.x86_64.xml                     |  1 +
>  .../caps_6.0.0.aarch64.xml                    |  1 +
>  .../qemucapabilitiesdata/caps_6.0.0.s390x.xml |  1 +
>  .../caps_6.0.0.x86_64.xml                     |  1 +
>  .../caps_6.1.0.x86_64.xml                     |  1 +
>  .../caps_6.2.0.aarch64.xml                    |  1 +
>  .../qemucapabilitiesdata/caps_6.2.0.ppc64.xml |  1 +
>  .../caps_6.2.0.x86_64.xml                     |  1 +

As noted in 2/3, all of the above belong to the patch adding the
capability code.

>  tests/qemuxml2argvdata/net-virtio-hash.args   | 35 +++++++++++++++++++
>  tests/qemuxml2argvdata/net-virtio-hash.xml    | 29 +++++++++++++++
>  tests/qemuxml2argvdata/net-virtio-rss.args    | 35 +++++++++++++++++++
>  tests/qemuxml2argvdata/net-virtio-rss.xml     | 29 +++++++++++++++
>  .../qemuxml2argvdata/net-virtio-rsshash.args  | 35 +++++++++++++++++++
>  tests/qemuxml2argvdata/net-virtio-rsshash.xml | 29 +++++++++++++++
>  .../virtio-options.x86_64-latest.args         |  2 +-
>  tests/qemuxml2argvdata/virtio-options.xml     |  2 +-
>  tests/qemuxml2argvtest.c                      |  7 ++++
>  22 files changed, 214 insertions(+), 2 deletions(-)
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-hash.args
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-hash.xml
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-rss.args
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-rss.xml
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-rsshash.args
>  create mode 100644 tests/qemuxml2argvdata/net-virtio-rsshash.xml

[...]

> diff --git a/tests/qemuxml2argvdata/net-virtio-rsshash.xml b/tests/qemuxml2argvdata/net-virtio-rsshash.xml
> new file mode 100644
> index 0000000000..248afa8ef8
> --- /dev/null
> +++ b/tests/qemuxml2argvdata/net-virtio-rsshash.xml
> @@ -0,0 +1,29 @@
> +<domain type='qemu'>
> +  <name>QEMUGuest1</name>
> +  <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
> +  <memory unit='KiB'>219100</memory>
> +  <currentMemory unit='KiB'>219100</currentMemory>
> +  <vcpu placement='static'>1</vcpu>
> +  <os>
> +    <type arch='i686' machine='pc'>hvm</type>
> +    <boot dev='hd'/>
> +  </os>
> +  <clock offset='utc'/>
> +  <on_poweroff>destroy</on_poweroff>
> +  <on_reboot>restart</on_reboot>
> +  <on_crash>destroy</on_crash>
> +  <devices>
> +    <emulator>/usr/bin/qemu-system-i386</emulator>
> +    <disk type='block' device='disk'>
> +      <source dev='/dev/HostVG/QEMUGuest1'/>
> +      <target dev='hda' bus='ide'/>
> +    </disk>
> +    <controller type='usb' index='0'/>
> +    <interface type='user'>
> +      <mac address='00:11:22:33:44:55'/>
> +      <model type='virtio'/>
> +      <driver rss='on' rss_hash_report='off'/>
> +    </interface>

Note that you can add multiple interfaces to one guest XML, so you don't
actually have to have 3 XMLs to test all 3 combinations, but add 3
network interfaces insetad.

> +    <memballoon model='virtio'/>
> +  </devices>
> +</domain>


[...]

> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
> index 6c67b36d5c..771898d63c 100644
> --- a/tests/qemuxml2argvtest.c
> +++ b/tests/qemuxml2argvtest.c
> @@ -3500,6 +3500,13 @@ mymain(void)
>  
>      DO_TEST_CAPS_LATEST("devices-acpi-index");
>  
> +    DO_TEST("net-virtio-rss",
> +            QEMU_CAPS_VIRTIO_RSS);
> +    DO_TEST("net-virtio-hash",
> +            QEMU_CAPS_VIRTIO_RSS);
> +    DO_TEST("net-virtio-rsshash",
> +            QEMU_CAPS_VIRTIO_RSS);

All new test cases should use DO_TEST_CAPS_LATEST instead of DO_TEST, or
one of the version-locked alternatives, but DO_TEST should be completely
avoided.





More information about the libvir-list mailing list