FRM code cleanup.
[openflowplugin.git] / applications / forwardingrules-manager / src / test / java / test / mock / MeterListenerTest.java
index 1fade0fdfbc722feab5bb9129d1e53f3433035e4..b21b74e465a36f886e98fa2bbc8df1c1aa60625e 100644 (file)
@@ -7,6 +7,8 @@
  */
 package test.mock;
 
+import static java.util.concurrent.TimeUnit.SECONDS;
+import static org.awaitility.Awaitility.await;
 import static org.junit.Assert.assertEquals;
 
 import java.util.List;
@@ -82,7 +84,9 @@ public class MeterListenerTest extends FRMTest {
                 reconciliationManager,
                 openflowServiceRecoveryHandler,
                 serviceRecoveryRegistry,
-                flowGroupCacheManager);
+                flowGroupCacheManager,
+                getRegistrationHelper()
+                );
 
         forwardingRulesManager.start();
         // TODO consider tests rewrite (added because of complicated access)
@@ -103,6 +107,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx.put(LogicalDatastoreType.CONFIGURATION, meterII, meter);
         assertCommit(writeTx.commit());
         SalMeterServiceMock salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getAddMeterCalls().size() == 1);
         List<AddMeterInput> addMeterCalls = salMeterService.getAddMeterCalls();
         assertEquals(1, addMeterCalls.size());
         assertEquals("DOM-0", addMeterCalls.get(0).getTransactionUri().getValue());
@@ -114,7 +119,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx = getDataBroker().newWriteOnlyTransaction();
         writeTx.put(LogicalDatastoreType.CONFIGURATION, meterII, meter);
         assertCommit(writeTx.commit());
-        salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getAddMeterCalls().size() == 2);
         addMeterCalls = salMeterService.getAddMeterCalls();
         assertEquals(2, addMeterCalls.size());
         assertEquals("DOM-1", addMeterCalls.get(1).getTransactionUri().getValue());
@@ -134,6 +139,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx.put(LogicalDatastoreType.CONFIGURATION, meterII, meter);
         assertCommit(writeTx.commit());
         SalMeterServiceMock salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getAddMeterCalls().size() == 1);
         List<AddMeterInput> addMeterCalls = salMeterService.getAddMeterCalls();
         assertEquals(1, addMeterCalls.size());
         assertEquals("DOM-0", addMeterCalls.get(0).getTransactionUri().getValue());
@@ -142,7 +148,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx = getDataBroker().newWriteOnlyTransaction();
         writeTx.put(LogicalDatastoreType.CONFIGURATION, meterII, meter);
         assertCommit(writeTx.commit());
-        salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getUpdateMeterCalls().size() == 1);
         List<UpdateMeterInput> updateMeterCalls = salMeterService.getUpdateMeterCalls();
         assertEquals(1, updateMeterCalls.size());
         assertEquals("DOM-1", updateMeterCalls.get(0).getTransactionUri().getValue());
@@ -162,6 +168,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx.put(LogicalDatastoreType.CONFIGURATION, meterII, meter);
         assertCommit(writeTx.commit());
         SalMeterServiceMock salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getAddMeterCalls().size() == 1);
         List<AddMeterInput> addMeterCalls = salMeterService.getAddMeterCalls();
         assertEquals(1, addMeterCalls.size());
         assertEquals("DOM-0", addMeterCalls.get(0).getTransactionUri().getValue());
@@ -169,7 +176,7 @@ public class MeterListenerTest extends FRMTest {
         writeTx = getDataBroker().newWriteOnlyTransaction();
         writeTx.delete(LogicalDatastoreType.CONFIGURATION, meterII);
         assertCommit(writeTx.commit());
-        salMeterService = (SalMeterServiceMock) forwardingRulesManager.getSalMeterService();
+        await().atMost(10, SECONDS).until(() -> salMeterService.getRemoveMeterCalls().size() == 1);
         List<RemoveMeterInput> removeMeterCalls = salMeterService.getRemoveMeterCalls();
         assertEquals(1, removeMeterCalls.size());
         assertEquals("DOM-1", removeMeterCalls.get(0).getTransactionUri().getValue());