You are viewing a plain text version of this content. The canonical link for it is here.
Posted to surefire-commits@maven.apache.org by df...@apache.org on 2008/01/24 23:38:05 UTC

svn commit: r615070 - /maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java

Author: dfabulich
Date: Thu Jan 24 14:38:04 2008
New Revision: 615070

URL: http://svn.apache.org/viewvc?rev=615070&view=rev
Log:
[SUREFIRE-433] Attach "classname" attribute to <testcase> elements, the way Ant 1.7 and TestNG do, so it's possible to tease apart multi-class test suites.  You could argue that this, together with revision 615068, fixes SUREFIRE-433, but I think that's still up for some debate.

Modified:
    maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java

Modified: maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java?rev=615070&r1=615069&r2=615070&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java (original)
+++ maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java Thu Jan 24 14:38:04 2008
@@ -73,7 +73,7 @@
 
         long runTime = System.currentTimeMillis() - testSetStartTime;
 
-        Xpp3Dom testSuite = createTestElement( "testsuite", report, runTime );
+        Xpp3Dom testSuite = createTestSuiteElement( report, runTime );
 
         showProperties( testSuite );
 
@@ -144,14 +144,30 @@
 
         long runTime = this.endTime - this.startTime;
 
-        Xpp3Dom testCase = createTestElement( "testcase", report, runTime );
+        Xpp3Dom testCase = createTestElement( report, runTime );
 
         results.add( testCase );
     }
 
-    private Xpp3Dom createTestElement( String name, ReportEntry report, long runTime )
+    private Xpp3Dom createTestElement( ReportEntry report, long runTime )
     {
-        Xpp3Dom testCase = new Xpp3Dom( name );
+        Xpp3Dom testCase = new Xpp3Dom( "testcase" );
+        testCase.setAttribute( "name", getReportName( report ) );
+        if ( report.getGroup() != null )
+        {
+            testCase.setAttribute( "group", report.getGroup() );
+        }
+        if ( report.getSource() != null )
+        {
+            testCase.setAttribute( "classname", report.getSource().getClass().getName() );
+        }
+        testCase.setAttribute( "time", elapsedTimeAsString( runTime ) );
+        return testCase;
+    }
+    
+    private Xpp3Dom createTestSuiteElement( ReportEntry report, long runTime )
+    {
+        Xpp3Dom testCase = new Xpp3Dom( "testsuite" );
         testCase.setAttribute( "name", getReportName( report ) );
         if ( report.getGroup() != null )
         {
@@ -185,7 +201,7 @@
     {
         long runTime = endTime - startTime;
 
-        Xpp3Dom testCase = createTestElement( "testcase", report, runTime );
+        Xpp3Dom testCase = createTestElement( report, runTime );
 
         Xpp3Dom element = createElement( testCase, name );