tests: qemuxml2argv: add DO_TEST_INTERNAL

Base macro to unify the actual testCompareXMLToArgv test calls

Reviewed-by: Andrea Bolognani <abologna@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
Cole Robinson 2019-03-14 09:38:02 -04:00
parent 6fa656384e
commit 530c1671e1

View 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.