From: Ján Tomko Date: Sat, 8 Sep 2018 21:00:54 +0000 (+0200) Subject: tests: introduce macro for qemu XML->startup XML X-Git-Tag: v4.8.0-rc1~196 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=18adfc87359d909bb7c6dcc73ddd4d7a62ec4dcd;p=thirdparty%2Flibvirt.git tests: introduce macro for qemu XML->startup XML Use this macro to indicate the intention to also run the XML->startup XML test. It sets the newly introduced FLAG_STEAL_VM flag, which is the new witness for the XML->argv test to leave the VM object behind. This will allow us to report proper errors in XML->startup tests. Signed-off-by: Ján Tomko --- diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 660330e252..244c678b9e 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -293,6 +293,7 @@ typedef enum { FLAG_EXPECT_FAILURE = 1 << 0, FLAG_EXPECT_PARSE_ERROR = 1 << 1, FLAG_FIPS = 1 << 2, + FLAG_STEAL_VM = 1 << 3, } virQemuXML2ArgvTestFlags; struct testInfo { @@ -471,6 +472,7 @@ testCheckExclusiveFlags(int flags) virCheckFlags(FLAG_EXPECT_FAILURE | FLAG_EXPECT_PARSE_ERROR | FLAG_FIPS | + FLAG_STEAL_VM | 0, -1); return 0; @@ -643,7 +645,7 @@ testCompareXMLToArgv(const void *data) ret = 0; } - if (!(flags & FLAG_EXPECT_FAILURE) && ret == 0) + if (flags & FLAG_STEAL_VM) VIR_STEAL_PTR(info->vm, vm); cleanup: @@ -853,6 +855,9 @@ mymain(void) # define DO_TEST_GIC(name, gic, ...) \ DO_TEST_FULL(name, NULL, -1, 0, 0, gic, __VA_ARGS__) +# define DO_TEST_WITH_STARTUP(name, ...) \ + DO_TEST_FULL(name, NULL, -1, FLAG_STEAL_VM, 0, GIC_NONE, __VA_ARGS__) + # define DO_TEST_FAILURE(name, ...) \ DO_TEST_FULL(name, NULL, -1, FLAG_EXPECT_FAILURE, \ 0, GIC_NONE, __VA_ARGS__) @@ -1092,7 +1097,7 @@ mymain(void) DO_TEST_PARSE_ERROR("disk-fmt-cow", NONE); DO_TEST_PARSE_ERROR("disk-fmt-dir", NONE); DO_TEST_PARSE_ERROR("disk-fmt-iso", NONE); - DO_TEST("disk-shared", NONE); + DO_TEST_WITH_STARTUP("disk-shared", NONE); DO_TEST_CAPS_VER("disk-shared", "2.12.0"); DO_TEST_CAPS_LATEST("disk-shared"); DO_TEST_PARSE_ERROR("disk-shared-qcow", NONE);