[libvirt] [PATCH 10/12] tests/domaincaps: Don't require redundant information
Andrea Bolognani
abologna at redhat.com
Wed Oct 23 10:43:00 UTC 2019
The full name of the test case, as well as the name of the QEMU
binary and corresponding capabilities file, can all be derived
from other information passed to the test, so there's no point in
asking the user to provide them.
Signed-off-by: Andrea Bolognani <abologna at redhat.com>
---
tests/domaincapstest.c | 127 ++++++++++++-----------------------------
1 file changed, 36 insertions(+), 91 deletions(-)
diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c
index e35eddc659..e3329ef1ff 100644
--- a/tests/domaincapstest.c
+++ b/tests/domaincapstest.c
@@ -267,17 +267,23 @@ test_virDomainCapsFormat(const void *opaque)
}
static int
-doTestQemu(const char *partialName,
- const char *capsName,
- const char *emulator,
+doTestQemu(const char *version,
const char *machine,
const char *arch,
virDomainVirtType type,
void *opaque)
{
g_autofree char *name = NULL;
+ g_autofree char *capsName = NULL;
+ g_autofree char *emulator = NULL;
- name = g_strdup_printf("qemu_%s.%s", partialName, arch);
+ name = g_strdup_printf("qemu_%s%s%s%s.%s",
+ version,
+ (type == VIR_DOMAIN_VIRT_QEMU ? "-tcg" : ""),
+ (machine ? "-" : ""), (machine ? machine : ""),
+ arch);
+ capsName = g_strdup_printf("caps_%s", version);
+ emulator = g_strdup_printf("/usr/bin/qemu-system-%s", arch);
struct testData data = {
.name = name,
@@ -326,9 +332,9 @@ mymain(void)
ret = -1; \
} while (0)
-#define DO_TEST_QEMU(Name, CapsName, Emulator, Machine, Arch, Type) \
+#define DO_TEST_QEMU(Version, Machine, Arch, Type) \
do { \
- if (doTestQemu(Name, CapsName, Emulator, Machine, Arch, Type, cfg) < 0) \
+ if (doTestQemu(Version, Machine, Arch, Type, cfg) < 0) \
ret = -1; \
} while (0)
@@ -378,101 +384,40 @@ mymain(void)
virFileWrapperAddPrefix("/home/user/.config/qemu/firmware",
abs_srcdir "/qemufirmwaredata/home/user/.config/qemu/firmware");
- DO_TEST_QEMU("1.7.0", "caps_1.7.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("1.7.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.6.0", "caps_2.6.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.6.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.6.0", NULL, "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.6.0", "virt", "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.6.0", NULL, "ppc64", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.8.0", "caps_2.8.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.7.0", NULL, "s390x", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.8.0-tcg", "caps_2.8.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_QEMU);
+ DO_TEST_QEMU("2.8.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.8.0", NULL, "x86_64", VIR_DOMAIN_VIRT_QEMU);
+ DO_TEST_QEMU("2.8.0", NULL, "s390x", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.9.0", "caps_2.9.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.9.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.9.0", "q35", "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.9.0", NULL, "x86_64", VIR_DOMAIN_VIRT_QEMU);
- DO_TEST_QEMU("2.9.0-q35", "caps_2.9.0",
- "/usr/bin/qemu-system-x86_64", "q35",
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.12.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.12.0", "virt", "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.12.0", NULL, "ppc64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("2.12.0", NULL, "s390x", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.9.0-tcg", "caps_2.9.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_QEMU);
+ DO_TEST_QEMU("3.0.0", NULL, "s390x", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.12.0", "caps_2.12.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("3.1.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.6.0", "caps_2.6.0",
- "/usr/bin/qemu-system-aarch64", NULL,
- "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.0.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.0.0", NULL, "s390x", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.6.0-virt", "caps_2.6.0",
- "/usr/bin/qemu-system-aarch64", "virt",
- "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.1.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
- DO_TEST_QEMU("2.12.0-virt", "caps_2.12.0",
- "/usr/bin/qemu-system-aarch64", "virt",
- "aarch64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("2.6.0", "caps_2.6.0",
- "/usr/bin/qemu-system-ppc64", NULL,
- "ppc64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("2.12.0", "caps_2.12.0",
- "/usr/bin/qemu-system-ppc64", NULL,
- "ppc64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("2.7.0", "caps_2.7.0",
- "/usr/bin/qemu-system-s390x", NULL,
- "s390x", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("2.8.0", "caps_2.8.0",
- "/usr/bin/qemu-system-s390x", NULL,
- "s390x", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("2.12.0", "caps_2.12.0",
- "/usr/bin/qemu-system-s390x", NULL,
- "s390x", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("3.0.0", "caps_3.0.0",
- "/usr/bin/qemu-system-s390x", NULL,
- "s390x", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("3.1.0", "caps_3.1.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.0.0", "caps_4.0.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.0.0", "caps_4.0.0",
- "/usr/bin/qemu-system-s390x", NULL,
- "s390x", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.1.0", "caps_4.1.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.2.0", "caps_4.2.0",
- "/usr/bin/qemu-system-x86_64", NULL,
- "x86_64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.2.0", "caps_4.2.0",
- "/usr/bin/qemu-system-ppc64", NULL,
- "ppc64", VIR_DOMAIN_VIRT_KVM);
-
- DO_TEST_QEMU("4.2.0", "caps_4.2.0",
- "/usr/bin/qemu-system-aarch64", NULL,
- "aarch64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.2.0", NULL, "x86_64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.2.0", NULL, "ppc64", VIR_DOMAIN_VIRT_KVM);
+ DO_TEST_QEMU("4.2.0", NULL, "aarch64", VIR_DOMAIN_VIRT_KVM);
virObjectUnref(cfg);
--
2.21.0
More information about the libvir-list
mailing list