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 2012/12/11 16:36:03 UTC

[2/2] [SUREFIRE-935] Implement trimStackTrace for JUnit4 [SUREFIRE-936] Make it easier to see which tests fail

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnitStackTraceWriter.java
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnitStackTraceWriter.java b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnitStackTraceWriter.java
deleted file mode 100644
index 476b56d..0000000
--- a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnitStackTraceWriter.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.apache.maven.surefire.junit;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.apache.maven.surefire.report.PojoStackTraceWriter;
-
-/**
- * Stack trace writer for JUnit tests.
- *
- * @author <a href="mailto:brett@apache.org">Brett Porter</a>
- */
-public class JUnitStackTraceWriter
-    extends PojoStackTraceWriter
-{
-    public JUnitStackTraceWriter( String testClass, String testName, Throwable throwable )
-    {
-        super( testClass, testName, throwable );
-    }
-}

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/PojoTestSet.java
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/PojoTestSet.java b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/PojoTestSet.java
index 787b832..464b857 100644
--- a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/PojoTestSet.java
+++ b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/PojoTestSet.java
@@ -24,7 +24,7 @@ import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.ArrayList;
 import java.util.List;
-import org.apache.maven.surefire.report.PojoStackTraceWriter;
+import org.apache.maven.surefire.report.LegacyPojoStackTraceWriter;
 import org.apache.maven.surefire.report.ReportEntry;
 import org.apache.maven.surefire.report.RunListener;
 import org.apache.maven.surefire.report.SimpleReportEntry;
@@ -132,8 +132,8 @@ public class PojoTestSet
         {
             report =
                 SimpleReportEntry.withException( testObject.getClass().getName(), getTestName( userFriendlyMethodName ),
-                                                 new PojoStackTraceWriter( testObject.getClass().getName(),
-                                                                           method.getName(), e ) );
+                                                 new LegacyPojoStackTraceWriter( testObject.getClass().getName(),
+                                                                                 method.getName(), e ) );
 
             reportManager.testFailed( report );
 
@@ -160,8 +160,8 @@ public class PojoTestSet
 
             report =
                 SimpleReportEntry.withException( testObject.getClass().getName(), getTestName( userFriendlyMethodName ),
-                                                 new PojoStackTraceWriter( testObject.getClass().getName(),
-                                                                           method.getName(), t ) );
+                                                 new LegacyPojoStackTraceWriter( testObject.getClass().getName(),
+                                                                                 method.getName(), t ) );
 
             reportManager.testFailed( report );
             // Don't return  here, because tearDownFixture should be called even
@@ -171,8 +171,8 @@ public class PojoTestSet
         {
             report =
                 SimpleReportEntry.withException( testObject.getClass().getName(), getTestName( userFriendlyMethodName ),
-                                                 new PojoStackTraceWriter( testObject.getClass().getName(),
-                                                                           method.getName(), t ) );
+                                                 new LegacyPojoStackTraceWriter( testObject.getClass().getName(),
+                                                                                 method.getName(), t ) );
 
             reportManager.testFailed( report );
             // Don't return  here, because tearDownFixture should be called even
@@ -188,8 +188,8 @@ public class PojoTestSet
             // Treat any exception from tearDownFixture as a failure of the test.
             report =
                 SimpleReportEntry.withException( testObject.getClass().getName(), getTestName( userFriendlyMethodName ),
-                                                 new PojoStackTraceWriter( testObject.getClass().getName(),
-                                                                           method.getName(), t ) );
+                                                 new LegacyPojoStackTraceWriter( testObject.getClass().getName(),
+                                                                                 method.getName(), t ) );
 
             reportManager.testFailed( report );
 

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/TestListenerInvocationHandler.java
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/TestListenerInvocationHandler.java b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/TestListenerInvocationHandler.java
index 5c4c2fd..dc19b1e 100644
--- a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/TestListenerInvocationHandler.java
+++ b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/TestListenerInvocationHandler.java
@@ -24,6 +24,7 @@ import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.HashSet;
 import java.util.Set;
+import org.apache.maven.surefire.report.LegacyPojoStackTraceWriter;
 import org.apache.maven.surefire.report.ReportEntry;
 import org.apache.maven.surefire.report.RunListener;
 import org.apache.maven.surefire.report.SimpleReportEntry;
@@ -157,7 +158,7 @@ public class TestListenerInvocationHandler
         failedTestsSet.add( new FailedTest( args[0], Thread.currentThread() ) );
     }
 
-    private JUnitStackTraceWriter getStackTraceWriter( Object[] args )
+    private LegacyPojoStackTraceWriter getStackTraceWriter( Object[] args )
         throws IllegalAccessException, InvocationTargetException
     {
         String testName;
@@ -172,7 +173,7 @@ public class TestListenerInvocationHandler
             testName = "UNKNOWN";
         }
 
-        return new JUnitStackTraceWriter( args[0].getClass().getName(), testName, (Throwable) args[1] );
+        return new LegacyPojoStackTraceWriter( args[0].getClass().getName(), testName, (Throwable) args[1] );
     }
 
     private void handleAddFailure( Object[] args )

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit4/pom.xml
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit4/pom.xml b/surefire-providers/surefire-junit4/pom.xml
index 077bdd3..ce570c2 100644
--- a/surefire-providers/surefire-junit4/pom.xml
+++ b/surefire-providers/surefire-junit4/pom.xml
@@ -44,6 +44,12 @@
       <artifactId>common-junit4</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.apache.maven.surefire</groupId>
+      <artifactId>common-java5</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
   </dependencies>
 
   <build>
@@ -77,6 +83,7 @@
                 <includes>
                   <include>org.apache.maven.surefire:common-junit3</include>
                   <include>org.apache.maven.surefire:common-junit4</include>
+                  <include>org.apache.maven.surefire:common-java5</include>
                   <include>org.apache.maven.shared:maven-shared-utils</include>
                 </includes>
               </artifactSet>

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit47/pom.xml
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit47/pom.xml b/surefire-providers/surefire-junit47/pom.xml
index ddfb73d..eb1566b 100644
--- a/surefire-providers/surefire-junit47/pom.xml
+++ b/surefire-providers/surefire-junit47/pom.xml
@@ -60,6 +60,11 @@
       <artifactId>common-junit48</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.apache.maven.surefire</groupId>
+      <artifactId>common-java5</artifactId>
+      <version>${project.version}</version>
+    </dependency>
   </dependencies>
 
   <build>
@@ -92,6 +97,7 @@
                 <includes>
                   <include>org.apache.maven.surefire:common-junit3</include>
                   <include>org.apache.maven.surefire:common-junit4</include>
+                  <include>org.apache.maven.surefire:common-java5</include>
                 </includes>
               </artifactSet>
             </configuration>

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
index abce8ce..9bbb8b7 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
@@ -22,10 +22,13 @@ package org.apache.maven.surefire.junitcore;
 import java.util.ArrayList;
 import java.util.Map;
 import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
+import org.apache.maven.surefire.common.junit48.JUnit46StackTraceWriter;
 import org.apache.maven.surefire.report.RunListener;
+import org.apache.maven.surefire.report.StackTraceWriter;
 
 import org.junit.runner.Description;
 import org.junit.runner.Result;
+import org.junit.runner.notification.Failure;
 
 public class JUnitCoreRunListener
     extends JUnit4RunListener
@@ -92,4 +95,9 @@ public class JUnitCoreRunListener
         }
     }
 
+    @Override
+    protected StackTraceWriter createStackTraceWriter( Failure failure )
+    {
+        return new JUnit46StackTraceWriter( failure );
+    }
 }

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-testng/pom.xml
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-testng/pom.xml b/surefire-providers/surefire-testng/pom.xml
index 86023a8..62346b4 100644
--- a/surefire-providers/surefire-testng/pom.xml
+++ b/surefire-providers/surefire-testng/pom.xml
@@ -44,6 +44,11 @@
       <version>3.8.2</version>
       <scope>provided</scope>
     </dependency>
+    <dependency>
+      <groupId>org.apache.maven.surefire</groupId>
+      <artifactId>common-java5</artifactId>
+      <version>${project.version}</version>
+    </dependency>
   </dependencies>
 
   <build>

http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/fff9e32f/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
----------------------------------------------------------------------
diff --git a/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java b/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
index 899cade..7c838a8 100644
--- a/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
+++ b/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
@@ -110,8 +110,9 @@ public class TestNGDirectoryTestSuite
             executeSingleClass( reporterManagerFactory, testClass );
         }
     }
-    
-    private boolean containsAtLeast( TestsToRun testsToRun, int atLeast ) {
+
+    private boolean containsAtLeast( TestsToRun testsToRun, int atLeast )
+    {
         Iterator it = testsToRun.iterator();
         for ( int i = 0; i < atLeast; i++ )
         {
@@ -122,10 +123,10 @@ public class TestNGDirectoryTestSuite
 
             it.next();
         }
-        
+
         return true;
     }
-    
+
     private void executeSingleClass( ReporterFactory reporterManagerFactory, Class testClass )
         throws TestSetFailedException
     {