You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by li...@apache.org on 2012/10/25 03:59:50 UTC
svn commit: r1401948 -
/incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java
Author: liuzhe
Date: Thu Oct 25 01:59:50 2012
New Revision: 1401948
URL: http://svn.apache.org/viewvc?rev=1401948&view=rev
Log:
Fixed: Some properties are not generated if testing is terminated before finishing all tests
Modified:
incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java
Modified: incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java?rev=1401948&r1=1401947&r2=1401948&view=diff
==============================================================================
--- incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java (original)
+++ incubator/ooo/trunk/test/testcommon/source/org/openoffice/test/common/XMLReporter.java Thu Oct 25 01:59:50 2012
@@ -32,7 +32,12 @@ import org.junit.runner.notification.Fai
import org.junit.runner.notification.RunListener;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+/**
+ * Generate XML test report
+ *
+ */
public class XMLReporter extends RunListener {
private File outputDir = Testspace.getFile("output");
@@ -152,33 +157,37 @@ public class XMLReporter extends RunList
}
private void finishSuite() {
- testsuiteEl.setAttribute("time", Double.toString((System.currentTimeMillis() - testStart) / 1000.0));
- testsuiteEl.setAttribute("failures", Long.toString(failures));
- testsuiteEl.setAttribute("errors", Long.toString(errors));
- testsuiteEl.setAttribute("tests", Long.toString(tests));
- testsuiteEl.setAttribute("ignored", Long.toString(ignored));
- Element props = doc.createElement("properties");
- testsuiteEl.appendChild(props);
- // Add some extra information
- System.setProperty("info.os.name", SystemUtil.getOSName());
- System.setProperty("info.os.version", SystemUtil.getOSVersion());
- System.setProperty("info.os.arch", SystemUtil.getOSArch());
- System.setProperty("info.os.arch", SystemUtil.getOSArch());
- System.setProperty("info.ip", SystemUtil.getIPAddress());
- System.setProperty("info.hostname", SystemUtil.getHostName());
- Set<Entry<Object, Object>> entries = System.getProperties().entrySet();
- for (Entry<Object, Object> e : entries) {
- Element prop = doc.createElement("property");
- prop.setAttribute("name", "" + e.getKey());
- prop.setAttribute("value", "" + e.getValue());
- props.appendChild(prop);
- }
-
store();
}
private void store() {
if (doc != null) {
+ testsuiteEl.setAttribute("time", Double.toString((System.currentTimeMillis() - testStart) / 1000.0));
+ testsuiteEl.setAttribute("failures", Long.toString(failures));
+ testsuiteEl.setAttribute("errors", Long.toString(errors));
+ testsuiteEl.setAttribute("tests", Long.toString(tests));
+ testsuiteEl.setAttribute("ignored", Long.toString(ignored));
+ NodeList els = testsuiteEl.getElementsByTagName("properties");
+ if (els.getLength() > 0)
+ testsuiteEl.removeChild(els.item(0));
+
+ Element props = doc.createElement("properties");
+ testsuiteEl.appendChild(props);
+ // Add some extra information
+ System.setProperty("info.os.name", SystemUtil.getOSName());
+ System.setProperty("info.os.version", SystemUtil.getOSVersion());
+ System.setProperty("info.os.arch", SystemUtil.getOSArch());
+ System.setProperty("info.os.arch", SystemUtil.getOSArch());
+ System.setProperty("info.ip", SystemUtil.getIPAddress());
+ System.setProperty("info.hostname", SystemUtil.getHostName());
+ Set<Entry<Object, Object>> entries = System.getProperties().entrySet();
+ for (Entry<Object, Object> e : entries) {
+ Element prop = doc.createElement("property");
+ prop.setAttribute("name", "" + e.getKey());
+ prop.setAttribute("value", "" + e.getValue());
+ props.appendChild(prop);
+ }
+
FileUtil.storeXML(doc, file);
File htmlFile = new File(outputDir, "result.html");
InputStream is = getClass().getResourceAsStream("XMLReporter.xsl");