You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kr...@apache.org on 2011/12/05 21:45:52 UTC
svn commit: r1210615 - in /maven/surefire/trunk:
maven-surefire-report-plugin/src/site/ src/site/
surefire-api/src/main/java/org/apache/maven/surefire/report/
surefire-api/src/test/java/org/apache/maven/surefire/report/
surefire-integration-tests/src/t...
Author: krosenvold
Date: Mon Dec 5 20:45:51 2011
New Revision: 1210615
URL: http://svn.apache.org/viewvc?rev=1210615&view=rev
Log:
[SUREFIRE-793] JUnit47 provider reports incorrect time in the XML report
Added:
maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java (with props)
Modified:
maven/surefire/trunk/maven-surefire-report-plugin/src/site/site.xml
maven/surefire/trunk/src/site/site.xml
maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/MulticastingReporter.java
maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/XMLReporter.java
maven/surefire/trunk/surefire-api/src/test/java/org/apache/maven/surefire/report/XMLReporterTest.java
maven/surefire/trunk/surefire-integration-tests/src/test/resources/runorder-parallel/pom.xml
Modified: maven/surefire/trunk/maven-surefire-report-plugin/src/site/site.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-report-plugin/src/site/site.xml?rev=1210615&r1=1210614&r2=1210615&view=diff
==============================================================================
--- maven/surefire/trunk/maven-surefire-report-plugin/src/site/site.xml (original)
+++ maven/surefire/trunk/maven-surefire-report-plugin/src/site/site.xml Mon Dec 5 20:45:51 2011
@@ -20,6 +20,12 @@
-->
<project>
+ <skin>
+ <groupId>org.apache.maven.skins</groupId>
+ <artifactId>maven-fluido-skin</artifactId>
+ <version>1.0</version>
+ </skin>
+
<body>
<menu name="Overview">
<item name="Introduction" href="index.html"/>
Modified: maven/surefire/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/src/site/site.xml?rev=1210615&r1=1210614&r2=1210615&view=diff
==============================================================================
--- maven/surefire/trunk/src/site/site.xml (original)
+++ maven/surefire/trunk/src/site/site.xml Mon Dec 5 20:45:51 2011
@@ -20,11 +20,10 @@
-->
<project name="Surefire">
- <!-- TODO remove when using Maven Parent 11+ -->
<skin>
<groupId>org.apache.maven.skins</groupId>
- <artifactId>maven-stylus-skin</artifactId>
- <version>1.1</version>
+ <artifactId>maven-fluido-skin</artifactId>
+ <version>1.0</version>
</skin>
<body>
<menu ref="modules"/>
Modified: maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/MulticastingReporter.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/MulticastingReporter.java?rev=1210615&r1=1210614&r2=1210615&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/MulticastingReporter.java (original)
+++ maven/surefire/trunk/surefire-api/src/main/java/org/apache/maven/surefire/report/MulticastingReporter.java Mon Dec 5 20:45:51 2011
@@ -30,8 +30,11 @@ public class MulticastingReporter
implements Reporter
{
private final Reporter[] target;
+
private final int size;
+ private volatile long lastStartAt;
+
public MulticastingReporter( List target )
{
size = target.size();
@@ -40,14 +43,16 @@ public class MulticastingReporter
public void testSetStarting( ReportEntry report )
{
- for (int i = 0; i < size; i++){
+ for ( int i = 0; i < size; i++ )
+ {
target[i].testSetStarting( report );
}
}
public void testSetCompleted( ReportEntry report )
{
- for (int i = 0; i < size; i++){
+ for ( int i = 0; i < size; i++ )
+ {
target[i].testSetCompleted( report );
}
}
@@ -55,56 +60,80 @@ public class MulticastingReporter
public void testStarting( ReportEntry report )
{
- for (int i = 0; i < size; i++){
+ lastStartAt = System.currentTimeMillis();
+ for ( int i = 0; i < size; i++ )
+ {
target[i].testStarting( report );
}
}
public void testSucceeded( ReportEntry report )
{
- for (int i = 0; i < size; i++){
- target[i].testSucceeded( report );
+ ReportEntry wrapped = wrap( report );
+ for ( int i = 0; i < size; i++ )
+ {
+ target[i].testSucceeded( wrapped );
}
}
public void testError( ReportEntry report, String stdOut, String stdErr )
{
- for (int i = 0; i < size; i++){
- target[i].testError( report, stdOut, stdErr );
+ ReportEntry wrapped = wrap( report );
+ for ( int i = 0; i < size; i++ )
+ {
+ target[i].testError( wrapped, stdOut, stdErr );
}
}
public void testFailed( ReportEntry report, String stdOut, String stdErr )
{
- for (int i = 0; i < size; i++){
- target[i].testFailed( report, stdOut, stdErr );
+ ReportEntry wrapped = wrap( report );
+ for ( int i = 0; i < size; i++ )
+ {
+ target[i].testFailed( wrapped, stdOut, stdErr );
}
}
public void testSkipped( ReportEntry report )
{
- for (int i = 0; i < size; i++){
- target[i].testSkipped( report );
+ ReportEntry wrapped = wrap( report );
+ for ( int i = 0; i < size; i++ )
+ {
+ target[i].testSkipped( wrapped );
+ }
+ }
+
+ private ReportEntry wrap( ReportEntry other )
+ {
+ if ( other.getElapsed() != null )
+ {
+ return other;
}
+ return new CategorizedReportEntry( other.getSourceName(), other.getName(), other.getGroup(),
+ other.getStackTraceWriter(), Integer.valueOf(
+ (int) (System.currentTimeMillis() - this.lastStartAt) ));
}
public void writeMessage( String message )
{
- for (int i = 0; i < size; i++){
+ for ( int i = 0; i < size; i++ )
+ {
target[i].writeMessage( message );
}
}
public void writeMessage( byte[] b, int off, int len )
{
- for (int i = 0; i < size; i++){
+ for ( int i = 0; i < size; i++ )
+ {
target[i].writeMessage( b, off, len );
}
}
public void reset()
{
- for (int i = 0; i < size; i++){
+ for ( int i = 0; i < size; i++ )
+ {
target[i].reset();
}
}
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=1210615&r1=1210614&r2=1210615&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 Mon Dec 5 20:45:51 2011
@@ -56,6 +56,8 @@ public class XMLReporter
private final List results = Collections.synchronizedList( new ArrayList() );
+ private int elapsed = 0;
+
public XMLReporter( boolean trimStackTrace, File reportsDirectory )
{
@@ -97,7 +99,7 @@ public class XMLReporter
{
super.testSetCompleted( report );
- long runTime = System.currentTimeMillis() - testSetStartTime;
+ long runTime = elapsed > 0 ? elapsed : (System.currentTimeMillis() - testSetStartTime);
Xpp3Dom testSuite = createTestSuiteElement( report, runTime );
@@ -154,7 +156,7 @@ public class XMLReporter
{
File reportFile;
- if ( reportNameSuffix != null && reportNameSuffix.length() > 0)
+ if ( reportNameSuffix != null && reportNameSuffix.length() > 0 )
{
reportFile = new File( reportsDirectory, "TEST-" + report.getName() + "-" + reportNameSuffix + ".xml" );
}
@@ -194,6 +196,7 @@ public class XMLReporter
private Xpp3Dom createTestElement( ReportEntry report, long runTime )
{
+ elapsed += report.getElapsed().intValue();
Xpp3Dom testCase = new Xpp3Dom( "testcase" );
testCase.setAttribute( "name", getReportName( report ) );
if ( report.getGroup() != null )
@@ -202,7 +205,7 @@ public class XMLReporter
}
if ( report.getSourceName() != null )
{
- if ( reportNameSuffix != null && reportNameSuffix.length() > 0)
+ if ( reportNameSuffix != null && reportNameSuffix.length() > 0 )
{
testCase.setAttribute( "classname", report.getSourceName() + "(" + reportNameSuffix + ")" );
}
@@ -219,7 +222,7 @@ public class XMLReporter
{
Xpp3Dom testCase = new Xpp3Dom( "testsuite" );
- if ( reportNameSuffix != null && reportNameSuffix.length() > 0)
+ if ( reportNameSuffix != null && reportNameSuffix.length() > 0 )
{
testCase.setAttribute( "name", getReportName( report ) + "(" + reportNameSuffix + ")" );
}
@@ -364,6 +367,7 @@ public class XMLReporter
public void reset()
{
results.clear();
+ elapsed = 0;
super.reset();
}
}
Modified: maven/surefire/trunk/surefire-api/src/test/java/org/apache/maven/surefire/report/XMLReporterTest.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-api/src/test/java/org/apache/maven/surefire/report/XMLReporterTest.java?rev=1210615&r1=1210614&r2=1210615&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-api/src/test/java/org/apache/maven/surefire/report/XMLReporterTest.java (original)
+++ maven/surefire/trunk/surefire-api/src/test/java/org/apache/maven/surefire/report/XMLReporterTest.java Mon Dec 5 20:45:51 2011
@@ -42,7 +42,8 @@ public class XMLReporterTest
reporter = new XMLReporter( true, new File( "." ));
message = "junit.framework.AssertionFailedError";
reportEntry = new SimpleReportEntry( this.getClass().getName(), "XMLReporterTest",
- new PojoStackTraceWriter( "", "", new AssertionFailedError() ) );
+ new PojoStackTraceWriter( "", "", new AssertionFailedError() ) ,
+ new Integer( 17 ) );
}
/*
@@ -77,7 +78,7 @@ public class XMLReporterTest
{
File reportDir = new File( "." );
String testName = "org.apache.maven.surefire.report.XMLReporterTest";
- reportEntry = new SimpleReportEntry( this.getClass().getName(), testName );
+ reportEntry = new SimpleReportEntry( this.getClass().getName(), testName, new Integer( 12) );
reporter = new XMLReporter( true, reportDir, null );
reporter.testSetCompleted( reportEntry );
Added: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java?rev=1210615&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java Mon Dec 5 20:45:51 2011
@@ -0,0 +1,8 @@
+package org.apache.maven.surefire.its;
+
+/**
+ * @author Kristian Rosenvold
+ */
+public class ReporterTime
+{
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/ReporterTime.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/resources/runorder-parallel/pom.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/runorder-parallel/pom.xml?rev=1210615&r1=1210614&r2=1210615&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/runorder-parallel/pom.xml (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/runorder-parallel/pom.xml Mon Dec 5 20:45:51 2011
@@ -35,7 +35,6 @@
<version>${surefire.version}</version>
<configuration>
<forkMode>once</forkMode>
- <parallel>classes</parallel>
<runOrder>${runOrder}</runOrder>
<threadCount>2</threadCount>
<perCoreThreadCount>false</perCoreThreadCount>