On Thu, Nov 3, 2016 at 1:03 PM, Christophe Fergeau <cfergeau@xxxxxxxxxx> wrote: > On Thu, Nov 03, 2016 at 10:06:22AM +0100, Zeeshan Ali wrote: >> --- >> tests/test-gconfig.c | 22 ++++++++++++++++++++++ >> tests/xml/gconfig-domain-device-unknown.xml | 5 +++++ >> 2 files changed, 27 insertions(+) >> create mode 100644 tests/xml/gconfig-domain-device-unknown.xml >> >> diff --git a/tests/test-gconfig.c b/tests/test-gconfig.c >> index 5389a26..b91f5af 100644 >> --- a/tests/test-gconfig.c >> +++ b/tests/test-gconfig.c >> @@ -762,6 +762,26 @@ static void test_domain_device_pci_hostdev(void) >> g_object_unref(G_OBJECT(domain)); >> } >> >> +static void test_domain_device_unknown(void) >> +{ >> + GVirConfigDomain *domain; >> + GList *devices; >> + GError *error = NULL; >> + char *xml; >> + >> + xml = load_xml("gconfig-domain-device-unknown.xml"); >> + >> + domain = gvir_config_domain_new_from_xml(xml, &error); >> + g_assert_no_error(error); >> + >> + devices = gvir_config_domain_get_devices(domain); >> + g_assert_nonnull(devices); >> + >> + g_list_free(devices); >> + g_object_unref(G_OBJECT(domain)); >> +} > > The whole point of this work is to make sure that the unknown nodes are > kept when regenerating the XML document, so I would expect a call to > check_xml() too after calling set_devices(domain, devices); * g_assert_nonnull(devices); actually checks that the only dev in the original xml is still there or not. * check_xml() does a simple string comparison and that fails since set_devices() changes the format. > You should have g_list_free_full(devices, g_object_unref); when freeing > the device list. will change that. -- Regards, Zeeshan Ali -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list