X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Fxdcc%2Fcore%2FCoreTest.java;h=6f1897c1fb6524999bcb4f26ec77b850f0ae0072;hb=380294ccebb47ae926ceffb214d691858950d435;hp=4ae2b0f2b5682f3ea7cedaa056838f12bc10118f;hpb=3339958e63b4422e90fb27d73f8d05095002dc85;p=xudocci.git diff --git a/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java b/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java index 4ae2b0f..6f1897c 100644 --- a/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java +++ b/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java @@ -1,20 +1,30 @@ package net.pterodactylus.xdcc.core; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsInAnyOrder; +import static org.hamcrest.Matchers.instanceOf; import static org.mockito.Matchers.any; +import static org.mockito.Matchers.anyInt; import static org.mockito.Matchers.anyString; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import net.pterodactylus.irc.Connection; import net.pterodactylus.irc.ConnectionFactory; import net.pterodactylus.xdcc.core.event.CoreStarted; +import net.pterodactylus.xdcc.core.event.GenericError; +import net.pterodactylus.xdcc.core.event.GenericMessage; import net.pterodactylus.xdcc.data.Channel; import net.pterodactylus.xdcc.data.Network; import com.google.common.eventbus.EventBus; +import org.junit.After; import org.junit.Before; import org.junit.Test; +import org.mockito.ArgumentCaptor; public class CoreTest { @@ -39,6 +49,25 @@ public class CoreTest { when(connectionFactory.createConnection("second.net", 6667)).thenReturn(secondConnection); } + @After + public void tearDown() { + core.stopAndWait(); + } + + @Test + public void startingTheCoreWithAnEmptyNetworkStartsButDoesNotConnect() { + Network firstNetwork = Network.builder("FirstNet").build(); + Channel firstChannel = new Channel(firstNetwork, "#first"); + core.addChannel(firstChannel); + core.startAndWait(); + ArgumentCaptor eventCaptor = ArgumentCaptor.forClass(Object.class); + verify(eventBus, times(2)).post(eventCaptor.capture()); + assertThat(eventCaptor.getAllValues(), containsInAnyOrder( + instanceOf(GenericError.class), instanceOf(CoreStarted.class) + )); + verify(connectionFactory, never()).createConnection(anyString(), anyInt()); + } + @Test public void startingTheCoreConnectsToConfiguredNetworks() { Network firstNetwork = Network.builder("FirstNet")