You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by je...@apache.org on 2013/04/10 17:57:12 UTC
[2/2] git commit: Add a big message test for SSL (ignored)
Add a big message test for SSL (ignored)
Project: http://git-wip-us.apache.org/repos/asf/mina/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina/commit/53990d6e
Tree: http://git-wip-us.apache.org/repos/asf/mina/tree/53990d6e
Diff: http://git-wip-us.apache.org/repos/asf/mina/diff/53990d6e
Branch: refs/heads/trunk
Commit: 53990d6e606144483cf5985f59ef1d693978a254
Parents: e9dc319
Author: Jeff MAURY <je...@apache.org>
Authored: Wed Apr 10 17:43:57 2013 +0200
Committer: Jeff MAURY <je...@apache.org>
Committed: Wed Apr 10 17:56:07 2013 +0200
----------------------------------------------------------------------
.../org/apache/mina/transport/tcp/SslTest.java | 47 +++++++++++++++
1 files changed, 47 insertions(+), 0 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mina/blob/53990d6e/core/src/test/java/org/apache/mina/transport/tcp/SslTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/mina/transport/tcp/SslTest.java b/core/src/test/java/org/apache/mina/transport/tcp/SslTest.java
index 85bafbd..7dcae8a 100644
--- a/core/src/test/java/org/apache/mina/transport/tcp/SslTest.java
+++ b/core/src/test/java/org/apache/mina/transport/tcp/SslTest.java
@@ -19,6 +19,8 @@
*/
package org.apache.mina.transport.tcp;
+import static org.junit.Assert.assertTrue;
+
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@@ -30,6 +32,8 @@ import java.nio.charset.Charset;
import java.security.GeneralSecurityException;
import java.security.KeyStore;
import java.security.Security;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
@@ -38,7 +42,9 @@ import javax.net.ssl.TrustManagerFactory;
import org.apache.mina.api.AbstractIoHandler;
import org.apache.mina.api.IoSession;
+import org.apache.mina.transport.nio.tcp.NioTcpClient;
import org.apache.mina.transport.nio.tcp.NioTcpServer;
+import org.junit.Ignore;
import org.junit.Test;
/**
@@ -166,4 +172,45 @@ public class SslTest {
if (clientError != null)
throw clientError;
}
+
+ @Test
+ @Ignore("SslHelper needs more attention for big messages")
+ public void testBigMessage() throws IOException, GeneralSecurityException, InterruptedException {
+ final CountDownLatch counter = new CountDownLatch(1);
+ NioTcpServer server = new NioTcpServer();
+ final int messageSize = 1 * 1024 * 1024;
+
+ /*
+ * Server
+ */
+ server.setReuseAddress(true);
+ server.getSessionConfig().setSslContext(createSSLContext());
+ server.setIoHandler(new AbstractIoHandler() {
+ private int receivedSize = 0;
+
+ /**
+ * {@inheritedDoc}
+ */
+ @Override
+ public void messageReceived(IoSession session, Object message) {
+ receivedSize += ((ByteBuffer)message).remaining();
+ if (receivedSize == 0) {
+ counter.countDown();
+ }
+ }
+ });
+ server.bind(new InetSocketAddress(0));
+ int port = server.getServerSocketChannel().socket().getLocalPort();
+
+ /*
+ * Client
+ */
+ Socket socket = server.getSessionConfig().getSslContext().getSocketFactory().createSocket("localhost", port);
+ socket.getOutputStream().write(new byte[messageSize]);
+ socket.getOutputStream().flush();
+ socket.close();
+ assertTrue(counter.await(10, TimeUnit.SECONDS));
+
+
+ }
}