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 kr...@apache.org on 2010/12/21 17:32:30 UTC
svn commit: r1051545 - in
/maven/surefire/trunk/surefire-providers/surefire-junit4/src:
main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java
test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java
Author: krosenvold
Date: Tue Dec 21 16:32:30 2010
New Revision: 1051545
URL: http://svn.apache.org/viewvc?rev=1051545&view=rev
Log:
[SUREFIRE-671] Junit4.x tries to run abstract testcases
Modified:
maven/surefire/trunk/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java
maven/surefire/trunk/surefire-providers/surefire-junit4/src/test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java
Modified: maven/surefire/trunk/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java?rev=1051545&r1=1051544&r2=1051545&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java (original)
+++ maven/surefire/trunk/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4TestChecker.java Tue Dec 21 16:32:30 2010
@@ -19,6 +19,7 @@ package org.apache.maven.surefire.junit4
* under the License.
*/
+import org.apache.maven.surefire.NonAbstractClassFilter;
import org.apache.maven.surefire.util.ReflectionUtils;
import org.apache.maven.surefire.util.ScannerFilter;
@@ -33,12 +34,15 @@ public class JUnit4TestChecker
{
private final Class junitClass;
+ private final NonAbstractClassFilter nonAbstractClassFilter;
+
private final Class runWith;
public JUnit4TestChecker( ClassLoader testClassLoader )
{
this.junitClass = getJUnitClass( testClassLoader, junit.framework.Test.class.getName() );
this.runWith = getJUnitClass( testClassLoader, org.junit.runner.RunWith.class.getName() );
+ this.nonAbstractClassFilter = new NonAbstractClassFilter();
}
public boolean accept( Class testClass )
@@ -49,6 +53,10 @@ public class JUnit4TestChecker
@SuppressWarnings( { "unchecked" } )
public boolean isValidJUnit4Test( Class testClass )
{
+ if ( !nonAbstractClassFilter.accept( testClass ) )
+ {
+ return false;
+ }
if ( junitClass != null && junitClass.isAssignableFrom( testClass ) )
{
return true;
Modified: maven/surefire/trunk/surefire-providers/surefire-junit4/src/test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-providers/surefire-junit4/src/test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java?rev=1051545&r1=1051544&r2=1051545&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-providers/surefire-junit4/src/test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java (original)
+++ maven/surefire/trunk/surefire-providers/surefire-junit4/src/test/java/org/apache/maven/surefire/junit4/JUnit4TestCheckerTest.java Tue Dec 21 16:32:30 2010
@@ -86,6 +86,11 @@ public class JUnit4TestCheckerTest
assertFalse( jUnit4TestChecker.isValidJUnit4Test( NotValidTest.class ) );
}
+ @Test
+ public void dontAcceptAbstractClasses(){
+ assertFalse( jUnit4TestChecker.isValidJUnit4Test( BaseClassWithTest.class ) );
+ }
+
public static class AlsoValid
extends TestCase