]> xenbits.xensource.com Git - libvirt.git/commitdiff
tests: qemuxml2argv: add DO_TEST_INTERNAL
authorCole Robinson <crobinso@redhat.com>
Thu, 14 Mar 2019 13:38:02 +0000 (09:38 -0400)
committerCole Robinson <crobinso@redhat.com>
Fri, 22 Mar 2019 15:51:47 +0000 (11:51 -0400)
Base macro to unify the actual testCompareXMLToArgv test calls

Reviewed-by: Andrea Bolognani <abologna@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
tests/qemuxml2argvtest.c

index 20fef8f67200d8995b1475fb7c9960ef9c7c44cb..6e7d1b0b9a8bc3a7c0ea269a099d4649c28db9af 100644 (file)
@@ -867,24 +867,27 @@ mymain(void)
  * the test cases should be forked using DO_TEST_CAPS_VER with the appropriate
  * version.
  */
-# define DO_TEST_CAPS_INTERNAL(_name, arch, ver, ...) \
+# define DO_TEST_INTERNAL(_name, _suffix, ...) \
     do { \
         static struct testInfo info = { \
             .name = _name, \
-            .suffix = "." arch "-" ver, \
+            .suffix = _suffix, \
         }; \
         if (testInfoSetArgs(&info, capslatest, \
-                            ARG_CAPS_ARCH, arch, \
-                            ARG_CAPS_VER, ver, \
-                            __VA_ARGS__, \
-                            ARG_END) < 0) \
+                            __VA_ARGS__, ARG_END) < 0) \
             return EXIT_FAILURE; \
-        if (virTestRun("QEMU XML-2-ARGV " _name "." arch "-" ver, \
+        if (virTestRun("QEMU XML-2-ARGV " _name _suffix, \
                        testCompareXMLToArgv, &info) < 0) \
             ret = -1; \
         testInfoClear(&info); \
     } while (0)
 
+# define DO_TEST_CAPS_INTERNAL(name, arch, ver, ...) \
+    DO_TEST_INTERNAL(name, "." arch "-" ver, \
+                     ARG_CAPS_ARCH, arch, \
+                     ARG_CAPS_VER, ver, \
+                     __VA_ARGS__)
+
 # define DO_TEST_CAPS_ARCH_VER(name, arch, ver) \
     DO_TEST_CAPS_INTERNAL(name, arch, ver, ARG_END)
 
@@ -909,20 +912,9 @@ mymain(void)
                                   ARG_FLAGS, FLAG_EXPECT_PARSE_ERROR)
 
 
-# define DO_TEST_FULL(_name, ...) \
-    do { \
-        static struct testInfo info = { \
-            .name = _name, \
-        }; \
-        if (testInfoSetArgs(&info, capslatest, \
-                            __VA_ARGS__, QEMU_CAPS_LAST, \
-                            ARG_END) < 0) \
-            return EXIT_FAILURE; \
-        if (virTestRun("QEMU XML-2-ARGV " _name, \
-                       testCompareXMLToArgv, &info) < 0) \
-            ret = -1; \
-        testInfoClear(&info); \
-    } while (0)
+# define DO_TEST_FULL(name, ...) \
+    DO_TEST_INTERNAL(name, "", \
+                     __VA_ARGS__, QEMU_CAPS_LAST)
 
 /* All the following macros require an explicit QEMU_CAPS_* list
  * at the end of the argument list, or the NONE placeholder.