Make Netty-3 dependency optional
[controller.git] / opendaylight / md-sal / sal-clustering-commons / src / test / java / org / opendaylight / controller / cluster / common / actor / MessageTrackerTest.java
index 9c11c13c25e946c9f22c9067b23889328f39e63a..f1c3eae731da0543bd030f91856a3e64e2e6630a 100644 (file)
@@ -10,9 +10,11 @@ package org.opendaylight.controller.cluster.common.actor;
 
 import static java.util.concurrent.TimeUnit.MILLISECONDS;
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.assertThrows;
+import static org.junit.Assert.assertTrue;
+
+import com.google.common.testing.FakeTicker;
 import java.util.List;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.slf4j.Logger;
@@ -23,14 +25,14 @@ public class MessageTrackerTest {
         // Intentionally empty
     }
 
-    private final static Logger LOG = LoggerFactory.getLogger(MessageTrackerTest.class);
+    private static final Logger LOG = LoggerFactory.getLogger(MessageTrackerTest.class);
 
-    private TestTicker ticker;
+    private FakeTicker ticker;
     private MessageTracker messageTracker;
 
     @Before
     public void setup() {
-        ticker = new TestTicker();
+        ticker = new FakeTicker();
         messageTracker = new MessageTracker(Foo.class, 10, ticker);
     }
 
@@ -39,7 +41,7 @@ public class MessageTrackerTest {
         MessageTracker.Context context1 = messageTracker.received(new Foo());
         context1.close();
 
-        ticker.increment(MILLISECONDS.toNanos(20));
+        ticker.advance(20, MILLISECONDS);
         MessageTracker.Context context2 = messageTracker.received(new Foo());
         context2.close();
     }
@@ -51,12 +53,11 @@ public class MessageTrackerTest {
         MessageTracker.Context context1 = messageTracker.received(new Foo());
         context1.close();
 
-        ticker.increment(MILLISECONDS.toNanos(20));
+        ticker.advance(20, MILLISECONDS);
 
         MessageTracker.Context context2 = messageTracker.received(new Foo());
-        Assert.assertEquals(true, context2.error().isPresent());
-        Assert.assertEquals(0, context2.error().get().getMessageProcessingTimesSinceLastExpectedMessage().size());
-
+        assertEquals(true, context2.error().isPresent());
+        assertEquals(0, context2.error().orElseThrow().getMessageProcessingTimesSinceLastExpectedMessage().size());
     }
 
     @Test
@@ -68,34 +69,33 @@ public class MessageTrackerTest {
 
         messageTracker.received("A").close();
         messageTracker.received(10L).close();
-        MessageTracker.Context c = messageTracker.received(100);
+        MessageTracker.Context context = messageTracker.received(100);
 
-        ticker.increment(MILLISECONDS.toNanos(20));
+        ticker.advance(20, MILLISECONDS);
 
-        c.close();
+        context.close();
 
         MessageTracker.Context context2 = messageTracker.received(new Foo());
 
-        Assert.assertEquals(true, context2.error().isPresent());
+        assertEquals(true, context2.error().isPresent());
 
-        MessageTracker.Error error = context2.error().get();
+        MessageTracker.Error error = context2.error().orElseThrow();
 
         List<MessageTracker.MessageProcessingTime> messageProcessingTimes =
                 error.getMessageProcessingTimesSinceLastExpectedMessage();
 
-        Assert.assertEquals(3, messageProcessingTimes.size());
+        assertEquals(3, messageProcessingTimes.size());
 
-        Assert.assertEquals(String.class, messageProcessingTimes.get(0).getMessageClass());
-        Assert.assertEquals(Long.class, messageProcessingTimes.get(1).getMessageClass());
-        Assert.assertEquals(Integer.class, messageProcessingTimes.get(2).getMessageClass());
-        Assert.assertTrue(messageProcessingTimes.get(2).getElapsedTimeInNanos() > MILLISECONDS.toNanos(10));
-        Assert.assertEquals(Foo.class, error.getLastExpectedMessage().getClass());
-        Assert.assertEquals(Foo.class, error.getCurrentExpectedMessage().getClass());
+        assertEquals(String.class, messageProcessingTimes.get(0).getMessageClass());
+        assertEquals(Long.class, messageProcessingTimes.get(1).getMessageClass());
+        assertEquals(Integer.class, messageProcessingTimes.get(2).getMessageClass());
+        assertTrue(messageProcessingTimes.get(2).getElapsedTimeInNanos() > MILLISECONDS.toNanos(10));
+        assertEquals(Foo.class, error.getLastExpectedMessage().getClass());
+        assertEquals(Foo.class, error.getCurrentExpectedMessage().getClass());
 
         LOG.error("An error occurred : {}" , error);
     }
 
-
     @Test
     public void testMetExpectationOnTracking() {
         messageTracker.begin();
@@ -103,11 +103,10 @@ public class MessageTrackerTest {
         MessageTracker.Context context1 = messageTracker.received(new Foo());
         context1.close();
 
-        ticker.increment(MILLISECONDS.toNanos(1));
+        ticker.advance(1, MILLISECONDS);
 
         MessageTracker.Context context2 = messageTracker.received(new Foo());
-        Assert.assertEquals(false, context2.error().isPresent());
-
+        assertEquals(false, context2.error().isPresent());
     }
 
     @Test
@@ -116,12 +115,7 @@ public class MessageTrackerTest {
 
         messageTracker.received(new Foo());
 
-        try {
-            messageTracker.received(new Foo());
-            fail("Expected an IllegalStateException");
-        } catch (IllegalStateException e){
-
-        }
+        assertThrows(IllegalStateException.class, () -> messageTracker.received(new Foo()));
     }
 
     @Test
@@ -131,22 +125,22 @@ public class MessageTrackerTest {
     }
 
     @Test
-    public void testDelayInFirstExpectedMessageArrival(){
+    public void testDelayInFirstExpectedMessageArrival() {
         messageTracker.begin();
 
-        ticker.increment(MILLISECONDS.toNanos(20));
+        ticker.advance(20, MILLISECONDS);
 
         MessageTracker.Context context = messageTracker.received(new Foo());
 
-        Assert.assertEquals(true, context.error().isPresent());
+        assertEquals(true, context.error().isPresent());
 
-        MessageTracker.Error error = context.error().get();
+        MessageTracker.Error error = context.error().orElseThrow();
 
-        Assert.assertEquals(null, error.getLastExpectedMessage());
-        Assert.assertEquals(Foo.class, error.getCurrentExpectedMessage().getClass());
+        assertEquals(null, error.getLastExpectedMessage());
+        assertEquals(Foo.class, error.getCurrentExpectedMessage().getClass());
 
         String errorString = error.toString();
-        Assert.assertTrue(errorString.contains("Last Expected Message = null"));
+        assertTrue(errorString.contains("Last Expected Message = null"));
 
         LOG.error("An error occurred : {}", error);
     }
@@ -155,14 +149,13 @@ public class MessageTrackerTest {
     public void testCallingBeginDoesNotResetWatch() {
         messageTracker.begin();
 
-        ticker.increment(MILLISECONDS.toNanos(20));
+        ticker.advance(20, MILLISECONDS);
 
         messageTracker.begin();
 
         MessageTracker.Context context = messageTracker.received(new Foo());
 
-        Assert.assertEquals(true, context.error().isPresent());
-
+        assertEquals(true, context.error().isPresent());
     }
 
     @Test
@@ -171,20 +164,18 @@ public class MessageTrackerTest {
         messageTracker.begin();
 
         try (MessageTracker.Context ctx = messageTracker.received(45)) {
-            Assert.assertEquals(false, ctx.error().isPresent());
+            assertEquals(false, ctx.error().isPresent());
         }
         try (MessageTracker.Context ctx = messageTracker.received(45L)) {
-            Assert.assertEquals(false, ctx.error().isPresent());
+            assertEquals(false, ctx.error().isPresent());
         }
 
         List<MessageTracker.MessageProcessingTime> processingTimeList =
                 messageTracker.getMessagesSinceLastExpectedMessage();
 
-        Assert.assertEquals(2, processingTimeList.size());
+        assertEquals(2, processingTimeList.size());
 
         assertEquals(Integer.class, processingTimeList.get(0).getMessageClass());
         assertEquals(Long.class, processingTimeList.get(1).getMessageClass());
-
     }
-
-}
\ No newline at end of file
+}