X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Fxdcc%2Fcore%2FCoreTest.java;h=a4985ce6c3bbcd6043ed70aa6dc121d03ad70b1d;hb=0cc61e0eed1bb761092b410efdb5b27782962f1a;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..a4985ce 100644 --- a/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java +++ b/src/test/java/net/pterodactylus/xdcc/core/CoreTest.java @@ -1,21 +1,33 @@ 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.Ignore; import org.junit.Test; +import org.mockito.ArgumentCaptor; +@Ignore("this test completely sucks") public class CoreTest { private static final String TEMP_DIRECTORY = "/tmp"; @@ -39,6 +51,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")