You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by el...@apache.org on 2016/08/24 15:24:13 UTC

mina git commit: Slightly changing the test : - the messageReceive does not anymore close the session (it's already closed on the client) - looping 10 000 times - removing the verbose logs, adding some logs and a counter.

Repository: mina
Updated Branches:
  refs/heads/2.0 109381c94 -> 8238a93fa


Slightly changing the test :
- the messageReceive does not anymore close the session (it's already
closed on the client)
- looping 10 000 times
- removing the verbose logs, adding some logs  and a counter.

Project: http://git-wip-us.apache.org/repos/asf/mina/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina/commit/8238a93f
Tree: http://git-wip-us.apache.org/repos/asf/mina/tree/8238a93f
Diff: http://git-wip-us.apache.org/repos/asf/mina/diff/8238a93f

Branch: refs/heads/2.0
Commit: 8238a93fab3cb09366f9003d2de591e39c365810
Parents: 109381c
Author: Emmanuel L�charny <el...@symas.com>
Authored: Wed Aug 24 16:39:16 2016 +0200
Committer: Emmanuel L�charny <el...@symas.com>
Committed: Wed Aug 24 16:39:16 2016 +0200

----------------------------------------------------------------------
 .../transport/socket/nio/DIRMINA1041Test.java   | 63 ++++++++++++++++----
 1 file changed, 51 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mina/blob/8238a93f/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java
----------------------------------------------------------------------
diff --git a/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java b/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java
index 4f70106..08cbf30 100644
--- a/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java
+++ b/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java
@@ -1,5 +1,6 @@
 package org.apache.mina.transport.socket.nio;
 
+import org.apache.mina.core.buffer.IoBuffer;
 import org.apache.mina.core.future.CloseFuture;
 import org.apache.mina.core.future.ConnectFuture;
 import org.apache.mina.core.future.WriteFuture;
@@ -18,40 +19,71 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.net.InetSocketAddress;
+import java.net.SocketAddress;
 
 public class DIRMINA1041Test {
 
     private static final Logger LOG = LoggerFactory.getLogger(DIRMINA1041Test.class);
     private static final String HOST = "localhost";
     private static final int PORT = AvailablePortFinder.getNextAvailable(); 
-    private static final long TIMEOUT = 3000L;
+    private static final long TIMEOUT = 10000L;
+    private static int counter = 0;
     private SocketAcceptor acceptor;
     private SocketConnector connector;
     
     @Before
     public void setUp() throws Exception {
         acceptor = new NioSocketAcceptor();
+        acceptor.setReuseAddress(true);
         acceptor.setHandler(new SomeAcceptHandler());
         acceptor.bind(new InetSocketAddress(HOST, PORT));
 
         connector = new NioSocketConnector();
+        connector.getSessionConfig().setReuseAddress(true);
         connector.getFilterChain().addLast("codec", new ProtocolCodecFilter(new TextLineCodecFactory()));
         connector.setHandler(new SomeConnectHandler());
     }
 
     @Test
     public void testWrite() throws InterruptedException {
-        for (int i = 0; i < 1000; i++) {
-            IoSession session = getSession();
-
-            WriteFuture future = session.write("Test");
-            LOG.info("Waiting for WriteFuture to complete. Session: " + session);
-            if (!future.await(TIMEOUT)) {
-                Assert.fail("WriteFuture did not complete. Session: " + session);
+        SocketAddress address = new InetSocketAddress(HOST, PORT);
+        
+        try {
+            for (int i = 0; i < 10000; i++) {
+                ConnectFuture future = connector.connect( address);
+    
+                if (!future.awaitUninterruptibly(TIMEOUT)) {
+                    
+                    Assert.fail("ConnectFuture did not complete.");
+                }
+                
+                IoSession session = future.getSession();
+                
+                if ( i % 1000 == 0 ) {
+                    System.out.println("Loop " + i +", counter = " + counter);
+                }
+    
+                WriteFuture writeFuture = session.write("Test" + i);
+                
+                //LOG.info("Waiting for WriteFuture to complete. Session: " + session);
+                if (!writeFuture.await(TIMEOUT)) {
+                    LOG.info("WriteFuture did not complete. Session: " + session);
+                    Assert.fail("WriteFuture did not complete. Session: " + session);
+                }
+                
+                CloseFuture closeFuture = session.closeOnFlush();
+                
+                if (!closeFuture.awaitUninterruptibly(TIMEOUT)) {
+                    Assert.fail("CloseFuture did not complete.");
+                }
+                
+                //Thread.sleep( 2 );
             }
-
-            closeSession(session);
+        } catch (Exception e) {
+            e.printStackTrace();
         }
+        
+        System.out.println("Done " + 100000  + " loops, counter = " + counter);
     }
 
     @After
@@ -63,6 +95,7 @@ public class DIRMINA1041Test {
     private IoSession getSession() {
         ConnectFuture future = connector.connect(new InetSocketAddress(HOST, PORT));
         if (!future.awaitUninterruptibly(TIMEOUT)) {
+            
             Assert.fail("ConnectFuture did not complete.");
         }
         return future.getSession();
@@ -78,14 +111,20 @@ public class DIRMINA1041Test {
     private class SomeConnectHandler extends IoHandlerAdapter {
         @Override
         public void sessionClosed(IoSession session) throws Exception {
-            LOG.info("Connector - Session closed : " + session);
+            //LOG.info("Connector - Session closed : " + session);
+        }
+        
+        public void messageSent(IoSession session, Object message) throws Exception {
+            //LOG.info("message sent : " + message);
         }
     }
 
     private class SomeAcceptHandler extends IoHandlerAdapter {
         @Override
         public void messageReceived(IoSession session, Object message) throws Exception {
-            session.closeNow();
+            //LOG.info("Message received : " + ((IoBuffer)message).toString() );
+            counter++;
+            //session.closeNow();
         }
     }
 }


Re: mina git commit: Slightly changing the test : - the messageReceive does not anymore close the session (it's already closed on the client) - looping 10 000 times - removing the verbose logs, adding some logs and a counter.

Posted by Kai Zhang <lo...@gmail.com>.
sorry, but how to cancel subscription from this mailing list?

On Wed, Aug 24, 2016 at 11:24 PM, <el...@apache.org> wrote:

> Repository: mina
> Updated Branches:
>   refs/heads/2.0 109381c94 -> 8238a93fa
>
>
> Slightly changing the test :
> - the messageReceive does not anymore close the session (it's already
> closed on the client)
> - looping 10 000 times
> - removing the verbose logs, adding some logs  and a counter.
>
> Project: http://git-wip-us.apache.org/repos/asf/mina/repo
> Commit: http://git-wip-us.apache.org/repos/asf/mina/commit/8238a93f
> Tree: http://git-wip-us.apache.org/repos/asf/mina/tree/8238a93f
> Diff: http://git-wip-us.apache.org/repos/asf/mina/diff/8238a93f
>
> Branch: refs/heads/2.0
> Commit: 8238a93fab3cb09366f9003d2de591e39c365810
> Parents: 109381c
> Author: Emmanuel Lécharny <el...@symas.com>
> Authored: Wed Aug 24 16:39:16 2016 +0200
> Committer: Emmanuel Lécharny <el...@symas.com>
> Committed: Wed Aug 24 16:39:16 2016 +0200
>
> ----------------------------------------------------------------------
>  .../transport/socket/nio/DIRMINA1041Test.java   | 63 ++++++++++++++++----
>  1 file changed, 51 insertions(+), 12 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/mina/blob/8238a93f/
> mina-core/src/test/java/org/apache/mina/transport/socket/
> nio/DIRMINA1041Test.java
> ----------------------------------------------------------------------
> diff --git a/mina-core/src/test/java/org/apache/mina/transport/socket/nio/DIRMINA1041Test.java
> b/mina-core/src/test/java/org/apache/mina/transport/socket/
> nio/DIRMINA1041Test.java
> index 4f70106..08cbf30 100644
> --- a/mina-core/src/test/java/org/apache/mina/transport/socket/
> nio/DIRMINA1041Test.java
> +++ b/mina-core/src/test/java/org/apache/mina/transport/socket/
> nio/DIRMINA1041Test.java
> @@ -1,5 +1,6 @@
>  package org.apache.mina.transport.socket.nio;
>
> +import org.apache.mina.core.buffer.IoBuffer;
>  import org.apache.mina.core.future.CloseFuture;
>  import org.apache.mina.core.future.ConnectFuture;
>  import org.apache.mina.core.future.WriteFuture;
> @@ -18,40 +19,71 @@ import org.slf4j.Logger;
>  import org.slf4j.LoggerFactory;
>
>  import java.net.InetSocketAddress;
> +import java.net.SocketAddress;
>
>  public class DIRMINA1041Test {
>
>      private static final Logger LOG = LoggerFactory.getLogger(
> DIRMINA1041Test.class);
>      private static final String HOST = "localhost";
>      private static final int PORT = AvailablePortFinder.
> getNextAvailable();
> -    private static final long TIMEOUT = 3000L;
> +    private static final long TIMEOUT = 10000L;
> +    private static int counter = 0;
>      private SocketAcceptor acceptor;
>      private SocketConnector connector;
>
>      @Before
>      public void setUp() throws Exception {
>          acceptor = new NioSocketAcceptor();
> +        acceptor.setReuseAddress(true);
>          acceptor.setHandler(new SomeAcceptHandler());
>          acceptor.bind(new InetSocketAddress(HOST, PORT));
>
>          connector = new NioSocketConnector();
> +        connector.getSessionConfig().setReuseAddress(true);
>          connector.getFilterChain().addLast("codec", new
> ProtocolCodecFilter(new TextLineCodecFactory()));
>          connector.setHandler(new SomeConnectHandler());
>      }
>
>      @Test
>      public void testWrite() throws InterruptedException {
> -        for (int i = 0; i < 1000; i++) {
> -            IoSession session = getSession();
> -
> -            WriteFuture future = session.write("Test");
> -            LOG.info("Waiting for WriteFuture to complete. Session: " +
> session);
> -            if (!future.await(TIMEOUT)) {
> -                Assert.fail("WriteFuture did not complete. Session: " +
> session);
> +        SocketAddress address = new InetSocketAddress(HOST, PORT);
> +
> +        try {
> +            for (int i = 0; i < 10000; i++) {
> +                ConnectFuture future = connector.connect( address);
> +
> +                if (!future.awaitUninterruptibly(TIMEOUT)) {
> +
> +                    Assert.fail("ConnectFuture did not complete.");
> +                }
> +
> +                IoSession session = future.getSession();
> +
> +                if ( i % 1000 == 0 ) {
> +                    System.out.println("Loop " + i +", counter = " +
> counter);
> +                }
> +
> +                WriteFuture writeFuture = session.write("Test" + i);
> +
> +                //LOG.info("Waiting for WriteFuture to complete. Session:
> " + session);
> +                if (!writeFuture.await(TIMEOUT)) {
> +                    LOG.info("WriteFuture did not complete. Session: " +
> session);
> +                    Assert.fail("WriteFuture did not complete. Session: "
> + session);
> +                }
> +
> +                CloseFuture closeFuture = session.closeOnFlush();
> +
> +                if (!closeFuture.awaitUninterruptibly(TIMEOUT)) {
> +                    Assert.fail("CloseFuture did not complete.");
> +                }
> +
> +                //Thread.sleep( 2 );
>              }
> -
> -            closeSession(session);
> +        } catch (Exception e) {
> +            e.printStackTrace();
>          }
> +
> +        System.out.println("Done " + 100000  + " loops, counter = " +
> counter);
>      }
>
>      @After
> @@ -63,6 +95,7 @@ public class DIRMINA1041Test {
>      private IoSession getSession() {
>          ConnectFuture future = connector.connect(new
> InetSocketAddress(HOST, PORT));
>          if (!future.awaitUninterruptibly(TIMEOUT)) {
> +
>              Assert.fail("ConnectFuture did not complete.");
>          }
>          return future.getSession();
> @@ -78,14 +111,20 @@ public class DIRMINA1041Test {
>      private class SomeConnectHandler extends IoHandlerAdapter {
>          @Override
>          public void sessionClosed(IoSession session) throws Exception {
> -            LOG.info("Connector - Session closed : " + session);
> +            //LOG.info("Connector - Session closed : " + session);
> +        }
> +
> +        public void messageSent(IoSession session, Object message) throws
> Exception {
> +            //LOG.info("message sent : " + message);
>          }
>      }
>
>      private class SomeAcceptHandler extends IoHandlerAdapter {
>          @Override
>          public void messageReceived(IoSession session, Object message)
> throws Exception {
> -            session.closeNow();
> +            //LOG.info("Message received : " +
> ((IoBuffer)message).toString() );
> +            counter++;
> +            //session.closeNow();
>          }
>      }
>  }
>
>