Add a unit test to verify the NUMA vcpus autocomplete implemented
in the previous patch.
Signed-off-by: Daniel Henrique Barboza <danielhb413(a)gmail.com>
---
.../numavcpus-topology-mismatch.xml | 37 ++++++++++++++++++
...avcpus-topology-mismatch.x86_64-latest.xml | 38 +++++++++++++++++++
tests/qemuxml2xmltest.c | 1 +
3 files changed, 76 insertions(+)
create mode 100644 tests/qemuxml2argvdata/numavcpus-topology-mismatch.xml
create mode 100644
tests/qemuxml2xmloutdata/numavcpus-topology-mismatch.x86_64-latest.xml
diff --git a/tests/qemuxml2argvdata/numavcpus-topology-mismatch.xml
b/tests/qemuxml2argvdata/numavcpus-topology-mismatch.xml
new file mode 100644
index 0000000000..d3b2c1297e
--- /dev/null
+++ b/tests/qemuxml2argvdata/numavcpus-topology-mismatch.xml
@@ -0,0 +1,37 @@
+<domain type='kvm'>
+ <name>dummy</name>
+ <uuid>4d92ec27-9ebf-400b-ae91-20c71c647c19</uuid>
+ <maxMemory slots='16' unit='KiB'>16777216</maxMemory>
+ <memory unit='KiB'>7864320</memory>
+ <currentMemory unit='KiB'>3906240</currentMemory>
+ <vcpu placement='auto'>12</vcpu>
+ <numatune>
+ <memory mode='strict' placement='auto'/>
+ </numatune>
+ <os>
+ <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type>
+ <boot dev='hd'/>
+ </os>
+ <cpu>
+ <numa>
+ <cell id='0' cpus='0' memory='3932160'
unit='KiB'/>
+ <cell id='1' cpus='2-4,6' memory='3932160'
unit='KiB'/>
+ </numa>
+ </cpu>
+ <clock offset='utc'/>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <controller type='usb' index='0' model='piix3-uhci'>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ </controller>
+ <controller type='pci' index='0' model='pci-root'/>
+ <input type='mouse' bus='ps2'/>
+ <input type='keyboard' bus='ps2'/>
+ <memballoon model='virtio'>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ </memballoon>
+ </devices>
+</domain>
diff --git a/tests/qemuxml2xmloutdata/numavcpus-topology-mismatch.x86_64-latest.xml
b/tests/qemuxml2xmloutdata/numavcpus-topology-mismatch.x86_64-latest.xml
new file mode 100644
index 0000000000..2d2245b10c
--- /dev/null
+++ b/tests/qemuxml2xmloutdata/numavcpus-topology-mismatch.x86_64-latest.xml
@@ -0,0 +1,38 @@
+<domain type='kvm'>
+ <name>dummy</name>
+ <uuid>4d92ec27-9ebf-400b-ae91-20c71c647c19</uuid>
+ <maxMemory slots='16' unit='KiB'>16777216</maxMemory>
+ <memory unit='KiB'>7864320</memory>
+ <currentMemory unit='KiB'>3906240</currentMemory>
+ <vcpu placement='auto'>12</vcpu>
+ <numatune>
+ <memory mode='strict' placement='auto'/>
+ </numatune>
+ <os>
+ <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type>
+ <boot dev='hd'/>
+ </os>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ <numa>
+ <cell id='0' cpus='0-1,5,7-11' memory='3932160'
unit='KiB'/>
+ <cell id='1' cpus='2-4,6' memory='3932160'
unit='KiB'/>
+ </numa>
+ </cpu>
+ <clock offset='utc'/>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <controller type='usb' index='0' model='piix3-uhci'>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ </controller>
+ <controller type='pci' index='0' model='pci-root'/>
+ <input type='mouse' bus='ps2'/>
+ <input type='keyboard' bus='ps2'/>
+ <memballoon model='virtio'>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ </memballoon>
+ </devices>
+</domain>
diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c
index 157e686f2a..0526a1f104 100644
--- a/tests/qemuxml2xmltest.c
+++ b/tests/qemuxml2xmltest.c
@@ -553,6 +553,7 @@ mymain(void)
DO_TEST("vcpu-placement-static",
QEMU_CAPS_KVM,
QEMU_CAPS_OBJECT_IOTHREAD);
+ DO_TEST_CAPS_LATEST("numavcpus-topology-mismatch");
DO_TEST("smp", NONE);
DO_TEST("iothreads", NONE);
--
2.26.2