Explorar o código

AMBARI-15895 - AlertReceivedListenerTest is Flaky When Running @Before Code (jonathanhurley)

Jonathan Hurley %!s(int64=9) %!d(string=hai) anos
pai
achega
683b7893cd

+ 2 - 1
ambari-project/pom.xml

@@ -505,8 +505,9 @@
         <artifactId>maven-surefire-plugin</artifactId>
         <artifactId>maven-surefire-plugin</artifactId>
         <configuration>
         <configuration>
           <redirectTestOutputToFile>true</redirectTestOutputToFile>
           <redirectTestOutputToFile>true</redirectTestOutputToFile>
-          <forkMode>always</forkMode>
           <forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
           <forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
+          <reuseForks>false</reuseForks>
+          <forkCount>1</forkCount>
         </configuration>
         </configuration>
       </plugin>
       </plugin>
       <plugin>
       <plugin>

+ 3 - 0
ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java

@@ -58,6 +58,7 @@ import org.junit.Test;
 import com.google.inject.Guice;
 import com.google.inject.Guice;
 import com.google.inject.Injector;
 import com.google.inject.Injector;
 import com.google.inject.persist.PersistService;
 import com.google.inject.persist.PersistService;
+import com.google.inject.persist.UnitOfWork;
 
 
 /**
 /**
  * Tests the {@link AlertReceivedListener}.
  * Tests the {@link AlertReceivedListener}.
@@ -83,6 +84,7 @@ public class AlertReceivedListenerTest {
   public void setup() throws Exception {
   public void setup() throws Exception {
     m_injector = Guice.createInjector(new InMemoryDefaultTestModule());
     m_injector = Guice.createInjector(new InMemoryDefaultTestModule());
     m_injector.getInstance(GuiceJpaInitializer.class);
     m_injector.getInstance(GuiceJpaInitializer.class);
+    m_injector.getInstance(UnitOfWork.class).begin();
 
 
     m_helper = m_injector.getInstance(OrmTestHelper.class);
     m_helper = m_injector.getInstance(OrmTestHelper.class);
     m_clusters = m_injector.getInstance(Clusters.class);
     m_clusters = m_injector.getInstance(Clusters.class);
@@ -123,6 +125,7 @@ public class AlertReceivedListenerTest {
 
 
   @After
   @After
   public void teardown() {
   public void teardown() {
+    m_injector.getInstance(UnitOfWork.class).end();
     m_injector.getInstance(PersistService.class).stop();
     m_injector.getInstance(PersistService.class).stop();
     m_injector = null;
     m_injector = null;
   }
   }