diff --git a/tests/domainbackupxml2xmlout/backup-pull-encrypted.xml b/tests/domainbackupxml2xmlout/backup-pull-encrypted.xml index ea9dcf72b9..3c3042111d 100644 --- a/tests/domainbackupxml2xmlout/backup-pull-encrypted.xml +++ b/tests/domainbackupxml2xmlout/backup-pull-encrypted.xml @@ -26,5 +26,6 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-pull-internal-invalid.xml b/tests/domainbackupxml2xmlout/backup-pull-internal-invalid.xml index ba8f7ca3ab..9702978ce0 100644 --- a/tests/domainbackupxml2xmlout/backup-pull-internal-invalid.xml +++ b/tests/domainbackupxml2xmlout/backup-pull-internal-invalid.xml @@ -26,6 +26,7 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-pull-seclabel.xml b/tests/domainbackupxml2xmlout/backup-pull-seclabel.xml index 450f007d3a..38330394f7 100644 --- a/tests/domainbackupxml2xmlout/backup-pull-seclabel.xml +++ b/tests/domainbackupxml2xmlout/backup-pull-seclabel.xml @@ -14,5 +14,6 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-pull.xml b/tests/domainbackupxml2xmlout/backup-pull.xml index 24fce9c0e7..4952270a5a 100644 --- a/tests/domainbackupxml2xmlout/backup-pull.xml +++ b/tests/domainbackupxml2xmlout/backup-pull.xml @@ -6,5 +6,6 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-push-encrypted.xml b/tests/domainbackupxml2xmlout/backup-push-encrypted.xml index a955340964..2a5aad93cd 100644 --- a/tests/domainbackupxml2xmlout/backup-push-encrypted.xml +++ b/tests/domainbackupxml2xmlout/backup-push-encrypted.xml @@ -25,5 +25,6 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-push-seclabel.xml b/tests/domainbackupxml2xmlout/backup-push-seclabel.xml index 9986889ba3..59af3e6a6c 100644 --- a/tests/domainbackupxml2xmlout/backup-push-seclabel.xml +++ b/tests/domainbackupxml2xmlout/backup-push-seclabel.xml @@ -13,5 +13,6 @@ + diff --git a/tests/domainbackupxml2xmlout/backup-push.xml b/tests/domainbackupxml2xmlout/backup-push.xml index 1997c814ae..bc11a93d94 100644 --- a/tests/domainbackupxml2xmlout/backup-push.xml +++ b/tests/domainbackupxml2xmlout/backup-push.xml @@ -6,5 +6,6 @@ + diff --git a/tests/domainbackupxml2xmlout/empty.xml b/tests/domainbackupxml2xmlout/empty.xml index b1ba4953be..52d2b4f0af 100644 --- a/tests/domainbackupxml2xmlout/empty.xml +++ b/tests/domainbackupxml2xmlout/empty.xml @@ -1 +1,7 @@ - + + + + + + + diff --git a/tests/genericxml2xmltest.c b/tests/genericxml2xmltest.c index 2c1e8616dd..8b9b0bafb6 100644 --- a/tests/genericxml2xmltest.c +++ b/tests/genericxml2xmltest.c @@ -51,6 +51,23 @@ struct testCompareBackupXMLData { }; +static virDomainDiskDefPtr +testCompareBackupXMLGetFakeDomdisk(const char *dst) +{ + virDomainDiskDefPtr domdisk = NULL; + + if (!(domdisk = virDomainDiskDefNew(NULL))) + abort(); + + domdisk->dst = g_strdup(dst); + domdisk->src->type = VIR_STORAGE_TYPE_FILE; + domdisk->src->format = VIR_STORAGE_FILE_QCOW2; + domdisk->src->path = g_strdup_printf("/fake/%s.qcow2", dst); + + return domdisk; +} + + static int testCompareBackupXML(const void *opaque) { @@ -63,6 +80,8 @@ testCompareBackupXML(const void *opaque) g_auto(virBuffer) buf = VIR_BUFFER_INITIALIZER; g_autofree char *actual = NULL; unsigned int parseFlags = 0; + g_autoptr(virDomainDef) fakedef = NULL; + size_t i; if (data->internal) parseFlags |= VIR_DOMAIN_BACKUP_PARSE_INTERNAL; @@ -80,6 +99,23 @@ testCompareBackupXML(const void *opaque) return -1; } + /* create a fake definition and fill it with disks */ + if (!(fakedef = virDomainDefNew())) + return -1; + + fakedef->ndisks = backup->ndisks + 1; + fakedef->disks = g_new0(virDomainDiskDefPtr, fakedef->ndisks); + + for (i = 0; i < backup->ndisks; i++) + fakedef->disks[i] = testCompareBackupXMLGetFakeDomdisk(backup->disks[i].name); + + fakedef->disks[fakedef->ndisks -1 ] = testCompareBackupXMLGetFakeDomdisk("vdextradisk"); + + if (virDomainBackupAlignDisks(backup, fakedef, "SUFFIX") < 0) { + VIR_TEST_VERBOSE("failed to align backup def '%s'", file_in); + return -1; + } + if (virDomainBackupDefFormat(&buf, backup, data->internal) < 0) { VIR_TEST_VERBOSE("failed to format backup def '%s'", file_in); return -1;