Populate the output filename strings only when the files are expected to
exist, so that other logic can be based on the presence of the strings
rather than having to re-check the test flags for expected state.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
tests/qemuxmlconftest.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/tests/qemuxmlconftest.c b/tests/qemuxmlconftest.c
index 65953b129b..c3acfb59d5 100644
--- a/tests/qemuxmlconftest.c
+++ b/tests/qemuxmlconftest.c
@@ -585,7 +585,7 @@ testInfoCheckDuplicate(testQemuInfo *info)
if (info->flags & FLAG_ALLOW_DUPLICATE_OUTPUT)
return 0;
- if (info->flags & (FLAG_EXPECT_FAILURE | FLAG_EXPECT_PARSE_ERROR))
+ if (!path)
path = info->errfile;
if (g_hash_table_contains(info->conf->duplicateTests, path)) {
@@ -994,9 +994,14 @@ testRun(const char *name,
va_end(ap);
info->infile = g_strdup_printf("%s/qemuxml2argvdata/%s.xml", abs_srcdir,
info->name);
- info->outfile = g_strdup_printf("%s/qemuxml2argvdata/%s%s.args",
abs_srcdir, info->name, suffix);
- info->errfile = g_strdup_printf("%s/qemuxml2argvdata/%s%s.err",
abs_srcdir, info->name, suffix);
- info->out_xml_inactive =
g_strdup_printf("%s/qemuxml2xmloutdata/%s%s.xml", abs_srcdir, info->name,
suffix);
+ if (info->flags & (FLAG_EXPECT_FAILURE | FLAG_EXPECT_PARSE_ERROR)) {
+ info->errfile = g_strdup_printf("%s/qemuxml2argvdata/%s%s.err",
abs_srcdir, info->name, suffix);
+ } else {
+ info->outfile = g_strdup_printf("%s/qemuxml2argvdata/%s%s.args",
abs_srcdir, info->name, suffix);
+ }
+
+ if (!(info->flags & FLAG_EXPECT_PARSE_ERROR))
+ info->out_xml_inactive =
g_strdup_printf("%s/qemuxml2xmloutdata/%s%s.xml", abs_srcdir, info->name,
suffix);
virTestRunLog(ret, name_parse, testXMLParse, info);
virTestRunLog(ret, name_xml, testCompareDef2XML, info);
--
2.43.0