From f3717047081455e2b46fbf0d25620fe9ade5b19e Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Wed, 30 Mar 2016 09:01:11 +0200 Subject: [PATCH] qemuhotplugtest: Test live data Until now, the only hot thing in this test was the name. That's because we set the id to '-1' before every test. With this change, we test the hotplug on live domains as the name suggests and as it should be. Signed-off-by: Martin Kletzander --- tests/qemuhotplugtest.c | 38 ++--- ...g-console-compat-2-live+console-virtio.xml | 130 ++++++++++++++++++ ...muhotplug-hotplug-base-live+disk-scsi.xml} | 24 +++- ...emuhotplug-hotplug-base-live+disk-usb.xml} | 24 +++- ...hotplug-hotplug-base-live+disk-virtio.xml} | 24 +++- .../qemuxml2argv-console-compat-2-live.xml} | 37 +++-- .../qemuxml2argv-hotplug-base-live.xml | 52 +++++++ 7 files changed, 288 insertions(+), 41 deletions(-) create mode 100644 tests/qemuhotplugtestdata/qemuhotplug-console-compat-2-live+console-virtio.xml rename tests/qemuhotplugtestdata/{qemuhotplug-hotplug-base+disk-scsi.xml => qemuhotplug-hotplug-base-live+disk-scsi.xml} (73%) rename tests/qemuhotplugtestdata/{qemuhotplug-hotplug-base+disk-usb.xml => qemuhotplug-hotplug-base-live+disk-usb.xml} (72%) rename tests/qemuhotplugtestdata/{qemuhotplug-hotplug-base+disk-virtio.xml => qemuhotplug-hotplug-base-live+disk-virtio.xml} (73%) rename tests/{qemuhotplugtestdata/qemuhotplug-console-compat-2+console-virtio.xml => qemuxml2argvdata/qemuxml2argv-console-compat-2-live.xml} (80%) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-hotplug-base-live.xml diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c index 447fb75fd6..5eb34c04b3 100644 --- a/tests/qemuhotplugtest.c +++ b/tests/qemuhotplugtest.c @@ -94,6 +94,9 @@ qemuHotplugCreateObjects(virDomainXMLOptionPtr xmlopt, (*vm)->def->id = QEMU_HOTPLUG_TEST_DOMAIN_ID; + if (qemuDomainSetPrivatePaths(&driver, *vm) < 0) + goto cleanup; + ret = 0; cleanup: return ret; @@ -179,7 +182,6 @@ testQemuHotplugCheckResult(virDomainObjPtr vm, char *actual; int ret; - vm->def->id = -1; actual = virDomainDefFormat(vm->def, driver.caps, VIR_DOMAIN_DEF_FORMAT_SECURE); if (!actual) @@ -426,62 +428,62 @@ mymain(void) /* Strange huh? Currently, only graphics can be updated :-P */ DO_TEST_UPDATE("disk-cdrom", "disk-cdrom-nochange", true, false, NULL); - DO_TEST_ATTACH("console-compat-2", "console-virtio", false, true, + DO_TEST_ATTACH("console-compat-2-live", "console-virtio", false, true, "chardev-add", "{\"return\": {\"pty\": \"/dev/pts/26\"}}", "device_add", QMP_OK); - DO_TEST_DETACH("console-compat-2", "console-virtio", false, false, + DO_TEST_DETACH("console-compat-2-live", "console-virtio", false, false, "device_del", QMP_OK, "chardev-remove", QMP_OK); - DO_TEST_ATTACH("hotplug-base", "disk-virtio", false, true, + DO_TEST_ATTACH("hotplug-base-live", "disk-virtio", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-virtio", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-virtio", false, false, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_ATTACH_EVENT("hotplug-base", "disk-virtio", false, true, + DO_TEST_ATTACH_EVENT("hotplug-base-live", "disk-virtio", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-virtio", true, true, + DO_TEST_DETACH("hotplug-base-live", "disk-virtio", true, true, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_DETACH("hotplug-base", "disk-virtio", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-virtio", false, false, "device_del", QMP_DEVICE_DELETED("virtio-disk4") QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_ATTACH("hotplug-base", "disk-usb", false, true, + DO_TEST_ATTACH("hotplug-base-live", "disk-usb", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-usb", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-usb", false, false, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_ATTACH_EVENT("hotplug-base", "disk-usb", false, true, + DO_TEST_ATTACH_EVENT("hotplug-base-live", "disk-usb", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-usb", true, true, + DO_TEST_DETACH("hotplug-base-live", "disk-usb", true, true, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_DETACH("hotplug-base", "disk-usb", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-usb", false, false, "device_del", QMP_DEVICE_DELETED("usb-disk16") QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_ATTACH("hotplug-base", "disk-scsi", false, true, + DO_TEST_ATTACH("hotplug-base-live", "disk-scsi", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-scsi", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-scsi", false, false, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_ATTACH_EVENT("hotplug-base", "disk-scsi", false, true, + DO_TEST_ATTACH_EVENT("hotplug-base-live", "disk-scsi", false, true, "human-monitor-command", HMP("OK\\r\\n"), "device_add", QMP_OK); - DO_TEST_DETACH("hotplug-base", "disk-scsi", true, true, + DO_TEST_DETACH("hotplug-base-live", "disk-scsi", true, true, "device_del", QMP_OK, "human-monitor-command", HMP("")); - DO_TEST_DETACH("hotplug-base", "disk-scsi", false, false, + DO_TEST_DETACH("hotplug-base-live", "disk-scsi", false, false, "device_del", QMP_DEVICE_DELETED("scsi0-0-0-5") QMP_OK, "human-monitor-command", HMP("")); diff --git a/tests/qemuhotplugtestdata/qemuhotplug-console-compat-2-live+console-virtio.xml b/tests/qemuhotplugtestdata/qemuhotplug-console-compat-2-live+console-virtio.xml new file mode 100644 index 0000000000..3495ee67b4 --- /dev/null +++ b/tests/qemuhotplugtestdata/qemuhotplug-console-compat-2-live+console-virtio.xml @@ -0,0 +1,130 @@ + + f17 + a1cd52eb-d37f-4717-fc6e-972f0774f4c9 + 1048576 + 1048576 + 1 + + /machine + + + hvm + + + + + + + + + destroy + restart + restart + + + + + + /usr/bin/qemu-system-x86_64 + + + + + + +
+ + + + + + + + +
+ + + +
+ + + +
+ + + + + + +
+ + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +