From 3e11939e6ef432200ee0f7ecaac50cd5ce6c29f2 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Tue, 23 Jan 2024 13:35:39 +0100 Subject: [PATCH] qemuxmlconftest: Populate output/error file only when needed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Ján Tomko Reviewed-by: Andrea Bolognani --- 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);