Author: bentmann
Date: Wed Aug 25 19:02:10 2010
New Revision: 989300
URL: http://svn.apache.org/viewvc?rev=989300&view=rev
Log:
[SUREFIRE-642] TestNG support doesn't w/o Junit on classpath
Submitted by: Marvin Froeder
Modified:
maven/surefire/trunk/surefire-integration-tests/src/test/resources/testng-simple/pom.xml
maven/surefire/trunk/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
Modified:
maven/surefire/trunk/surefire-integration-tests/src/test/resources/testng-simple/pom.xml
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/testng-simple/pom.xml?rev=989300&r1=989299&r2=989300&view=diff
==============================================================================
---
maven/surefire/trunk/surefire-integration-tests/src/test/resources/testng-simple/pom.xml
(original)
+++
maven/surefire/trunk/surefire-integration-tests/src/test/resources/testng-simple/pom.xml
Wed Aug 25 19:02:10 2010
@@ -39,6 +39,13 @@
<version>${testNgVersion}</version>
<classifier>jdk15</classifier>
<scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <!-- NOTE: Deliberaty excluding junit to enforce TestNG only tests,
cf. SUREFIRE-642 -->
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
</dependencies>
Modified:
maven/surefire/trunk/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java?rev=989300&r1=989299&r2=989300&view=diff
==============================================================================
---
maven/surefire/trunk/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
(original)
+++
maven/surefire/trunk/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGDirectoryTestSuite.java
Wed Aug 25 19:02:10 2010
@@ -115,15 +115,28 @@ public class TestNGDirectoryTestSuite
throw new IllegalStateException( "You must call locateTestSets
before calling execute" );
}
+ Class junitTest;
+ try
+ {
+ junitTest = Class.forName( "junit.framework.Test" );
+ }
+ catch ( ClassNotFoundException e )
+ {
+ junitTest = null;
+ }
+
List testNgTestClasses = new ArrayList();
List junitTestClasses = new ArrayList();
for ( Iterator it = testSets.values().iterator(); it.hasNext(); )
{
SurefireTestSet testSet = (SurefireTestSet) it.next();
Class c = testSet.getTestClass();
- if (junit.framework.Test.class.isAssignableFrom( c )) {
+ if ( junitTest != null && junitTest.isAssignableFrom( c ) )
+ {
junitTestClasses.add( c );
- } else {
+ }
+ else
+ {
testNgTestClasses.add( c );
}
}