[jboss-svn-commits] JBoss Common SVN: r4362 - arquillian/trunk/junit/src/main/java/org/jboss/arquillian/junit.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri May 7 15:37:10 EDT 2010


Author: aslak
Date: 2010-05-07 15:37:10 -0400 (Fri, 07 May 2010)
New Revision: 4362

Modified:
   arquillian/trunk/junit/src/main/java/org/jboss/arquillian/junit/Arquillian.java
Log:
ARQ-133 When running multiple testmethod on the same deployment, BeforeSuite was only called the first time. Web threads are reused.


Modified: arquillian/trunk/junit/src/main/java/org/jboss/arquillian/junit/Arquillian.java
===================================================================
--- arquillian/trunk/junit/src/main/java/org/jboss/arquillian/junit/Arquillian.java	2010-05-07 19:34:10 UTC (rev 4361)
+++ arquillian/trunk/junit/src/main/java/org/jboss/arquillian/junit/Arquillian.java	2010-05-07 19:37:10 UTC (rev 4362)
@@ -24,6 +24,7 @@
 import org.jboss.arquillian.impl.DeployableTestBuilder;
 import org.jboss.arquillian.impl.XmlConfigurationBuilder;
 import org.jboss.arquillian.spi.Configuration;
+import org.jboss.arquillian.spi.ContainerProfile;
 import org.jboss.arquillian.spi.TestMethodExecutor;
 import org.jboss.arquillian.spi.TestResult;
 import org.jboss.arquillian.spi.TestRunnerAdaptor;
@@ -62,12 +63,27 @@
             throw new InitializationError(Arrays.asList((Throwable)e));
          }
       }
+      /* TODO: HACK
+       *  If in-container, the Thread will be reused between multiple TestRuns.
+       *  We need to call BeginSuite before everyone. But only once if not. 
+       */
+      else if(ContainerProfile.CONTAINER == DeployableTestBuilder.getProfile())
+      {
+         try 
+         {
+            deployableTest.get().beforeSuite();
+         }
+         catch (Exception e) 
+         {
+            throw new InitializationError(Arrays.asList((Throwable)e));
+         }
+      }
    }
    
    @Override
    public void run(RunNotifier notifier)
    {
-      // register to listen for RunFinished to exeucte AfterSuite
+      // register to listen for RunFinished to execute AfterSuite
       notifier.addListener(new RunListener() 
       {
          @Override
@@ -82,7 +98,7 @@
             } 
             catch (Exception e) 
             {
-               throw new RuntimeException("Could not stop container", e);
+               throw new RuntimeException("Could not run @AfterSuite", e);
             }
          }
       });



More information about the jboss-svn-commits mailing list