diff --git a/WHATSNEW b/WHATSNEW index d6d89defc..6ffa91b9a 100644 --- a/WHATSNEW +++ b/WHATSNEW @@ -22,7 +22,7 @@ Other changes: * A GUI Frontend: Antidote. This is currently in development. * New tasks: stylebook, propertyfile, depend, antlr, telnet, csc, - ilasm, apply, javah, several clearcase tasks + ilasm, apply, javah, several clearcase tasks, junitreport * Added output attribute to . diff --git a/build.xml b/build.xml index 89ac6c475..61385c154 100644 --- a/build.xml +++ b/build.xml @@ -193,6 +193,10 @@ + + @@ -212,6 +216,14 @@ + + + + + + + + + + + + + + + + + + +

Classes

+

+ + + + +
+

+ + +
+ + + + + + + + / + -details.html + + + + + + +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/all-packages.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/all-packages.xsl new file mode 100644 index 000000000..983d53ab7 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/all-packages.xsl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + +

Home

+ + +

Packages

+ + +

+ + + + + +
+

+ + +
+ + + + + + + + + +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/class-details.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/class-details.xsl new file mode 100644 index 000000000..520ddae85 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/class-details.xsl @@ -0,0 +1,37 @@ + + + + + + + + + + + + + stylesheet.css + + + + + yes + + + +

Class .

+

+

TestCase

+ + + + + + +
+

+ + +
+ +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/classes-list.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/classes-list.xsl new file mode 100644 index 000000000..49b0280b5 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/classes-list.xsl @@ -0,0 +1,46 @@ + + + + + + + + + + + + + stylesheet.css + + + + + + + + +
+

+
+ +

Classes

+

+ + + + +
+

+ + +
+ + + + + + + + + +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-packages.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-packages.xsl new file mode 100644 index 000000000..6b08620a0 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-packages.xsl @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + yes + + + + + + +

Packages

+ + + + + + + + +
+
+
+ + + +

Classes

+ + + + + + + + +
+
+ + +
+ + + + + + Error + + + + + + + + + + + Error + + + + + + + + + + Error + Error + Error + Error + + +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-summary.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-summary.xsl new file mode 100644 index 000000000..c9e80a329 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/overview-summary.xsl @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + + +
+ + + + + + + + +

Packages

+ Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers. + + + + + + + + + + + + + + + + Error + Failure + + + + + + + + + +
+
+ + + + + + + + + + + + +

Package

+ + + + + + +
+ Back to top +

+

+ + + + + + + + + + + + + + + Error + Failure + + + + + + + + + + + + + + + + + +

TestCase

+ + + + + + + +
+ Back to top +
+
+ +
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/package-summary.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/package-summary.xsl new file mode 100644 index 000000000..9cef8f621 --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/package-summary.xsl @@ -0,0 +1,73 @@ + + + + + + + + + + + + + stylesheet.css + + + open('classes-list.html','classListFrame') + + yes + + + +

Package

+ + + + + + + + + + + + + +
+ +

Classes

+

+ + + + + + + + +
+

+ + +
+ + + + + + + Error + Failure + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/toolkit.xsl b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/toolkit.xsl new file mode 100644 index 000000000..a52103a3a --- /dev/null +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/xsl/toolkit.xsl @@ -0,0 +1,204 @@ + + + + + + + + + + ../ + + + + + + ../ + + + + + + + + + +
+ + + +
+ + + +
+
+ + + + no + +

Unit Tests Results

+ + + + + +
+ + Designed for use with JUnit and Ant.
+
+
+ + + + Tests + Failures + Errors + Success Rate + Time(s) + + + + + + + Name + Tests + Errors + Failures + Time(s) + + + + + + + Name + Status + Type + Time(s) + + + + + +

Summary

+ + + + + + + + + + + Error + TableRowColor + + + + + + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+ + + + + + Error + TableRowColor + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + N/A + + + + + + +

+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/org/apache/tools/ant/util/DOMElementWriter.java b/src/main/org/apache/tools/ant/util/DOMElementWriter.java index 38ece6a94..cc44790ab 100644 --- a/src/main/org/apache/tools/ant/util/DOMElementWriter.java +++ b/src/main/org/apache/tools/ant/util/DOMElementWriter.java @@ -67,6 +67,7 @@ import org.w3c.dom.*; * * @author The original author of XmlLogger * @author Stefan Bodewig + * @author Stephane Bailliez */ public class DOMElementWriter { @@ -119,18 +120,39 @@ public class DOMElementWriter { for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); - if (child.getNodeType() == Node.ELEMENT_NODE) { + switch (child.getNodeType()) { + + case Node.ELEMENT_NODE: if (!hasChildren) { out.write(lSep); hasChildren = true; } write((Element)child, out, indent + 1, indentWith); - } - - if (child.getNodeType() == Node.TEXT_NODE) { + break; + + case Node.TEXT_NODE: + case Node.CDATA_SECTION_NODE: out.write(""); + break; + + case Node.ENTITY_REFERENCE_NODE: + out.write('&'); + out.write(child.getNodeName()); + out.write(';'); + break; + + case Node.PROCESSING_INSTRUCTION_NODE: + out.write(" 0 ) { + out.write(' '); + out.write(data); + } + out.write("?>"); + break; } }