report: gracefully handle XML report creation when no tests are run

If no tests are run (because they have all been excluded) then make
sure we insert a valid timestamp into the XML file, and avoid printing
an error message when reading a non-existent test summary scratch
file.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Theodore Ts'o
2019-06-09 17:04:31 -04:00
committed by Eryu Guan
parent 3a82f23e45
commit ffdecf7498
+6 -1
View File
@@ -59,6 +59,9 @@ _xunit_make_section_report()
local report=$tmp.report.xunit.$sect_name.xml
# Header
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" > $REPORT_DIR/result.xml
if [ -z "$date_time" ]; then
date_time=$(date +"%F %T")
fi
local dtime=`echo $date_time| tr " " 'T'`
local stats="failures=\"$n_bad\" skipped=\"$n_notrun\" tests=\"$n_total\" time=\"$sect_time\""
local hw_info="hostname=\"$HOST\" timestamp=\"$dtime\" "
@@ -70,7 +73,9 @@ _xunit_make_section_report()
_xunit_add_property "$p"
done
echo -e "\t</properties>" >> $REPORT_DIR/result.xml
cat $tmp.report.xunit.$sect_name.xml >> $REPORT_DIR/result.xml
if [ -f $report ]; then
cat $report >> $REPORT_DIR/result.xml
fi
echo "</testsuite>" >> $REPORT_DIR/result.xml
echo "Xunit report: $REPORT_DIR/result.xml"
}