[Harness] Just try to generate the report when is NUnit.

This commit is contained in:
Manuel de la Pena 2020-02-07 20:23:04 -05:00 коммит произвёл GitHub
Родитель afe664fd95 c169895499
Коммит f27d428773
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 24 добавлений и 18 удалений

Просмотреть файл

@ -2250,26 +2250,32 @@ namespace xharness
} else if (log.Description == "NUnit results" || log.Description == "XML log") {
try {
if (File.Exists (log.FullPath) && new FileInfo (log.FullPath).Length > 0) {
var doc = new System.Xml.XmlDocument ();
doc.LoadWithoutNetworkAccess (log.FullPath);
var failures = doc.SelectNodes ("//test-case[@result='Error' or @result='Failure']").Cast<System.Xml.XmlNode> ().ToArray ();
if (failures.Length > 0) {
writer.WriteLine ("<div style='padding-left: 15px;'>");
writer.WriteLine ("<ul>");
foreach (var failure in failures) {
writer.WriteLine ("<li>");
var test_name = failure.Attributes ["name"]?.Value;
var message = failure.SelectSingleNode ("failure/message")?.InnerText;
writer.Write (HtmlFormat (test_name));
if (!string.IsNullOrEmpty (message)) {
writer.Write (": ");
writer.Write (HtmlFormat (message));
if (XmlResultParser.IsValidXml (log.FullPath, out var jargon)) {
if (jargon == XmlResultParser.Jargon.NUnit) {
var doc = new XmlDocument ();
doc.LoadWithoutNetworkAccess (log.FullPath);
var failures = doc.SelectNodes ("//test-case[@result='Error' or @result='Failure']").Cast<System.Xml.XmlNode> ().ToArray ();
if (failures.Length > 0) {
writer.WriteLine ("<div style='padding-left: 15px;'>");
writer.WriteLine ("<ul>");
foreach (var failure in failures) {
writer.WriteLine ("<li>");
var test_name = failure.Attributes ["name"]?.Value;
var message = failure.SelectSingleNode ("failure/message")?.InnerText;
writer.Write (HtmlFormat (test_name));
if (!string.IsNullOrEmpty (message)) {
writer.Write (": ");
writer.Write (HtmlFormat (message));
}
writer.WriteLine ("<br />");
writer.WriteLine ("</li>");
}
writer.WriteLine ("</ul>");
writer.WriteLine ("</div>");
}
writer.WriteLine ("<br />");
writer.WriteLine ("</li>");
} else {
writer.WriteLine ($"<span style='padding-left: 15px;'>Could not parse {log.Description}: Not supported format.</span><br />");
}
writer.WriteLine ("</ul>");
writer.WriteLine ("</div>");
}
}
} catch (Exception ex) {