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 br...@apache.org on 2006/03/02 02:09:10 UTC

svn commit: r382212 - in /maven/surefire/branches/surefire-testng: surefire-api/src/main/java/org/apache/maven/surefire/ surefire-booter/src/main/java/org/apache/maven/surefire/ surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire...

Author: brett
Date: Wed Mar  1 17:09:08 2006
New Revision: 382212

URL: http://svn.apache.org/viewcvs?rev=382212&view=rev
Log:
[MSUREFIRE-23] continue towards getting test ng working. Need to restructure to properly facilitate groups

Modified:
    maven/surefire/branches/surefire-testng/surefire-api/src/main/java/org/apache/maven/surefire/Surefire.java
    maven/surefire/branches/surefire-testng/surefire-booter/src/main/java/org/apache/maven/surefire/SurefireBooter.java
    maven/surefire/branches/surefire-testng/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGBattery.java

Modified: maven/surefire/branches/surefire-testng/surefire-api/src/main/java/org/apache/maven/surefire/Surefire.java
URL: http://svn.apache.org/viewcvs/maven/surefire/branches/surefire-testng/surefire-api/src/main/java/org/apache/maven/surefire/Surefire.java?rev=382212&r1=382211&r2=382212&view=diff
==============================================================================
--- maven/surefire/branches/surefire-testng/surefire-api/src/main/java/org/apache/maven/surefire/Surefire.java (original)
+++ maven/surefire/branches/surefire-testng/surefire-api/src/main/java/org/apache/maven/surefire/Surefire.java Wed Mar  1 17:09:08 2006
@@ -113,15 +113,7 @@
     public boolean run()
         throws Exception
     {
-/* TODO
-        //required for jdk14 javadoc annotations
-        if ( testSourceDirectory != null )
-        {
-            SurefireUtils.setTestSourceDirectory( testSourceDirectory );
-        }
-*/
-
-        List batts = instantiateBatteries( batteryHolders, classLoader );
+        List batts = instantiateBatteries( batteryHolders, classLoader, testSourceDirectory, groups );
 
         reporterManager = new ReporterManager( instantiateReports( reports, classLoader ), reportsDirectory );
 
@@ -172,15 +164,14 @@
 
                     List list = new ArrayList();
 
-                    for ( Iterator j = battery.getSubBatteryClassNames()
-                        .iterator(); j.hasNext(); )
+                    for ( Iterator j = battery.getSubBatteryClassNames().iterator(); j.hasNext(); )
                     {
                         String s = (String) j.next();
 
                         list.add( new Object[]{s, null} );
                     }
 
-                    List subBatteries = instantiateBatteries( list, classLoader );
+                    List subBatteries = instantiateBatteries( list, classLoader, testSourceDirectory, groups );
 
                     //continue normal mode
                     for ( Iterator j = subBatteries.iterator(); j.hasNext(); )
@@ -237,8 +228,7 @@
 
         reporterManager.resume();
 
-        return !( reporterManager.getNbErrors() > 0 || reporterManager
-            .getNbFailures() > 0 );
+        return !( reporterManager.getNbErrors() > 0 || reporterManager.getNbFailures() > 0 );
     }
 
     /**
@@ -295,7 +285,8 @@
      * @return
      * @throws Exception
      */
-    public static List instantiateBatteries( List batteryHolders, ClassLoader loader )
+    public static List instantiateBatteries( List batteryHolders, ClassLoader loader, String testSourceDirectory,
+                                             String groups )
         throws Exception
     {
         List batteries = new ArrayList();
@@ -304,7 +295,7 @@
         {
             Object[] holder = (Object[]) batteryHolders.get( i );
 
-            Object battery = instantiateBattery( holder, loader );
+            Object battery = instantiateBattery( holder, loader, testSourceDirectory, groups );
 
             if ( battery != null )
             {
@@ -330,8 +321,7 @@
 
             try
             {
-                Class reportClass = reporterClassLoader
-                    .loadClass( reportClassName );
+                Class reportClass = reporterClassLoader.loadClass( reportClassName );
 
                 // assert Reporter.class.isAssignableFrom(reportClass);
 
@@ -360,7 +350,8 @@
         return resources.getString( key );
     }
 
-    private static Object instantiateBattery( Object[] holder, ClassLoader loader )
+    private static Object instantiateBattery( Object[] holder, ClassLoader loader, String testSourceDirectory,
+                                              String groups )
         throws Exception
     {
         Class testClass;
@@ -421,9 +412,9 @@
                 Boolean b = (Boolean) m.invoke( null, new Object[]{testClass} );
                 if ( b.booleanValue() )
                 {
-                    Constructor constructor =
-                        batteryClass.getConstructor( new Class[]{Class.class, ClassLoader.class} );
-                    battery = constructor.newInstance( new Object[]{testClass, loader} );
+                    Constructor constructor = batteryClass.getConstructor(
+                        new Class[]{Class.class, ClassLoader.class, String.class, String.class} );
+                    battery = constructor.newInstance( new Object[]{testClass, loader, testSourceDirectory, groups} );
                 }
             }
             catch ( ClassNotFoundException e )

Modified: maven/surefire/branches/surefire-testng/surefire-booter/src/main/java/org/apache/maven/surefire/SurefireBooter.java
URL: http://svn.apache.org/viewcvs/maven/surefire/branches/surefire-testng/surefire-booter/src/main/java/org/apache/maven/surefire/SurefireBooter.java?rev=382212&r1=382211&r2=382212&view=diff
==============================================================================
--- maven/surefire/branches/surefire-testng/surefire-booter/src/main/java/org/apache/maven/surefire/SurefireBooter.java (original)
+++ maven/surefire/branches/surefire-testng/surefire-booter/src/main/java/org/apache/maven/surefire/SurefireBooter.java Wed Mar  1 17:09:08 2006
@@ -472,7 +472,8 @@
     {
         ClassLoader classLoader = createClassLoader();
 
-        List instantiatedBatteries = Surefire.instantiateBatteries( batteries, classLoader );
+        List instantiatedBatteries =
+            Surefire.instantiateBatteries( batteries, classLoader, testSourceDirectory, groups );
 
         List testClasses = new ArrayList();
 

Modified: maven/surefire/branches/surefire-testng/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGBattery.java
URL: http://svn.apache.org/viewcvs/maven/surefire/branches/surefire-testng/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGBattery.java?rev=382212&r1=382211&r2=382212&view=diff
==============================================================================
--- maven/surefire/branches/surefire-testng/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGBattery.java (original)
+++ maven/surefire/branches/surefire-testng/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGBattery.java Wed Mar  1 17:09:08 2006
@@ -42,9 +42,12 @@
 public class TestNGBattery
     extends AbstractBattery
 {
-    // TODO: is this needed?
+    private String testSourceDirectory;
+
     private Class testClass;
 
+    private String groups;
+
     private static IAnnotationFinder annotationFinder;
 
     /**
@@ -54,19 +57,7 @@
      * @param testClass
      * @param loader
      */
-    public TestNGBattery( Class testClass, ClassLoader loader )
-    {
-        processTestClass( testClass, loader );
-    }
-
-    /**
-     * Parses and configures this battery based on the test class
-     * being passed in.
-     *
-     * @param testClass
-     * @param loader
-     */
-    private void processTestClass( Class testClass, ClassLoader loader )
+    public TestNGBattery( Class testClass, ClassLoader loader, String testSourceDirectory, String groups )
     {
         if ( testClass == null )
         {
@@ -79,6 +70,10 @@
         }
 
         this.testClass = testClass;
+
+        this.testSourceDirectory = testSourceDirectory;
+
+        this.groups = groups;
     }
 
     public Class getTestClass()
@@ -119,8 +114,7 @@
 
         TestNG testNG = new TestNG();
         List classes = new ArrayList();
-
-        String groups = null; // TODO :remove
+        classes.add( testClass );
 
         //configure testng parameters
         ClassSuite classSuite = new ClassSuite( groups != null ? groups : "TestNG Suite", Utils.classesToXmlClasses(
@@ -131,8 +125,7 @@
         TestNGReporter testngReporter = new TestNGReporter( reportManager, surefire );
         testNG.addListener( (ITestListener) testngReporter );
         testNG.addListener( (ISuiteListener) testngReporter );
-        // TODO: bring back when TestNG returns the method
-//                        testNG.setReportResults(false);
+        testNG.setUseDefaultListeners( false );
 
         // TODO: maybe this was running junit tests for us so that parallel would work
 //        testNG.setThreadCount( threadCount );
@@ -149,12 +142,10 @@
 
         //set source path so testng can find javadoc
         //annotations if not in 1.5 jvm
-/* TODO
-        if ( !jvm15 && testSourceDirectory != null )
+        if ( /* TODO - necessary? !jvm15  && */ testSourceDirectory != null )
         {
             testNG.setSourcePath( testSourceDirectory );
         }
-*/
 
         //actually runs all the tests
         List result = testNG.runSuitesLocally();