Add test for CloseConnectionDuplicateClientName handling
authorDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Fri, 10 Jul 2015 12:20:53 +0000 (14:20 +0200)
committerDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Fri, 10 Jul 2015 12:20:53 +0000 (14:20 +0200)
src/test/java/net/pterodactylus/fcp/quelaton/DefaultFcpClientTest.java

index 575c188..6632d59 100644 (file)
@@ -16,6 +16,8 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.Future;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 import java.util.stream.Collectors;
 
 import net.pterodactylus.fcp.FcpKeyPair;
@@ -61,6 +63,21 @@ public class DefaultFcpClientTest {
                fcpServer.close();
        }
 
+       @Test(expected = ExecutionException.class)
+       public void defaultFcpClientThrowsExceptionIfItCanNotConnect()
+       throws IOException, ExecutionException, InterruptedException {
+               Logger.getAnonymousLogger().getParent().setLevel(Level.FINEST);
+               Logger.getAnonymousLogger().getParent().getHandlers()[0].setLevel(Level.FINEST);
+               Future<FcpKeyPair> keyPairFuture = fcpClient.generateKeypair().execute();
+               fcpServer.connect().get();
+               fcpServer.collectUntil(is("EndMessage"));
+               fcpServer.writeLine(
+                       "CloseConnectionDuplicateClientName",
+                       "EndMessage"
+               );
+               keyPairFuture.get();
+       }
+
        @Test
        public void defaultFcpClientCanGenerateKeypair() throws ExecutionException, InterruptedException, IOException {
                Future<FcpKeyPair> keyPairFuture = fcpClient.generateKeypair().execute();