From 2ab1c19561fa2d639d16d40018eace429ca8c1e9 Mon Sep 17 00:00:00 2001 From: Stephen Braimah Date: Mon, 13 Feb 2017 20:45:43 +0000 Subject: [PATCH] BAEL-639: Guide to Guava's EventBus Tests - removed EventWrapper and added DeadEvent Subscriber --- .../org/baeldung/guava/EventBusWrapper.java | 21 ----------------- .../org/baeldung/guava/EventListener.java | 7 ++++++ .../org/baeldung/guava/GuavaEventBusTest.java | 23 +++++++++++++++---- 3 files changed, 25 insertions(+), 26 deletions(-) delete mode 100644 guava/src/test/java/org/baeldung/guava/EventBusWrapper.java diff --git a/guava/src/test/java/org/baeldung/guava/EventBusWrapper.java b/guava/src/test/java/org/baeldung/guava/EventBusWrapper.java deleted file mode 100644 index 243bc9e6ea..0000000000 --- a/guava/src/test/java/org/baeldung/guava/EventBusWrapper.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.baeldung.guava; - -import com.google.common.eventbus.EventBus; - -class EventBusWrapper { - - private static EventBus eventBus = new EventBus(); - - static void register(Object object) { - eventBus.register(object); - } - - static void unregister(Object object) { - eventBus.unregister(object); - } - - static void post(Object object) { - eventBus.post(object); - } - -} diff --git a/guava/src/test/java/org/baeldung/guava/EventListener.java b/guava/src/test/java/org/baeldung/guava/EventListener.java index 02f22ce6b9..438fcade63 100644 --- a/guava/src/test/java/org/baeldung/guava/EventListener.java +++ b/guava/src/test/java/org/baeldung/guava/EventListener.java @@ -1,5 +1,6 @@ package org.baeldung.guava; +import com.google.common.eventbus.DeadEvent; import com.google.common.eventbus.Subscribe; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -21,6 +22,12 @@ public class EventListener { eventsHandled++; } + @Subscribe + public void handleDeadEvent(DeadEvent deadEvent) { + LOG.info("unhandled event [" + deadEvent.getEvent() + "]"); + eventsHandled++; + } + public int getEventsHandled() { return eventsHandled; } diff --git a/guava/src/test/java/org/baeldung/guava/GuavaEventBusTest.java b/guava/src/test/java/org/baeldung/guava/GuavaEventBusTest.java index 62e275fe92..0ff25c6df2 100644 --- a/guava/src/test/java/org/baeldung/guava/GuavaEventBusTest.java +++ b/guava/src/test/java/org/baeldung/guava/GuavaEventBusTest.java @@ -1,32 +1,36 @@ package org.baeldung.guava; +import com.google.common.eventbus.EventBus; import org.junit.After; import org.junit.Before; import org.junit.Test; + import static org.junit.Assert.*; public class GuavaEventBusTest { private EventListener listener; + private EventBus eventBus; @Before public void setUp() { + eventBus = new EventBus(); listener = new EventListener(); - EventBusWrapper.register(listener); + + eventBus.register(listener); } @After public void tearDown() { - EventBusWrapper.unregister(listener); + eventBus.unregister(listener); } @Test public void givenStringEvent_whenEventHandled_thenSuccess() { listener.resetEventsHandled(); - EventBusWrapper.post("String Event"); + eventBus.post("String Event"); assertEquals(1, listener.getEventsHandled()); - } @Test @@ -34,8 +38,17 @@ public class GuavaEventBusTest { listener.resetEventsHandled(); CustomEvent customEvent = new CustomEvent("Custom Event"); - EventBusWrapper.post(customEvent); + eventBus.post(customEvent); assertEquals(1, listener.getEventsHandled()); } + + @Test + public void givenUnSubscribedEvent_whenEventHandledByDeadEvent_thenSuccess() { + listener.resetEventsHandled(); + + eventBus.post(12345); + assertEquals(1, listener.getEventsHandled()); + } + }