From ba92cd4c3e53c7d3ef5ef9dbc754f23298b40e4d Mon Sep 17 00:00:00 2001 From: Trustin Lee Date: Wed, 28 May 2014 09:38:42 +0900 Subject: [PATCH] Work around the system configuration issue that causes NioSocketChannelTest to fail Motivation: On some ill-configured systems, InetAddress.getLocalHost() fails. NioSocketChannelTest calls java.net.Socket.connect() and it internally invoked InetAddress.getLocalHost(), which causes the test failures in NioSocketChannelTes on such an ill-configured system. Modifications: Use NetUtil.LOCALHOST explicitly. Result: NioSocketChannelTest should not fail anymore. --- .../java/io/netty/channel/nio/NioSocketChannelTest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/transport/src/test/java/io/netty/channel/nio/NioSocketChannelTest.java b/transport/src/test/java/io/netty/channel/nio/NioSocketChannelTest.java index 125ab4d1e7..3d5b47dfd4 100644 --- a/transport/src/test/java/io/netty/channel/nio/NioSocketChannelTest.java +++ b/transport/src/test/java/io/netty/channel/nio/NioSocketChannelTest.java @@ -24,11 +24,13 @@ import io.netty.channel.ChannelInboundHandlerAdapter; import io.netty.channel.ChannelOption; import io.netty.channel.socket.nio.NioServerSocketChannel; import io.netty.util.CharsetUtil; +import io.netty.util.NetUtil; import org.junit.Test; import java.io.DataInput; import java.io.DataInputStream; import java.io.InputStream; +import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketAddress; import java.nio.channels.ClosedChannelException; @@ -68,8 +70,7 @@ public class NioSocketChannelTest { SocketAddress address = sb.bind(0).sync().channel().localAddress(); - Socket s = new Socket(); - s.connect(address); + Socket s = new Socket(NetUtil.LOCALHOST, ((InetSocketAddress) address).getPort()); InputStream in = s.getInputStream(); byte[] buf = new byte[8192]; @@ -127,8 +128,7 @@ public class NioSocketChannelTest { SocketAddress address = sb.bind(0).sync().channel().localAddress(); - Socket s = new Socket(); - s.connect(address); + Socket s = new Socket(NetUtil.LOCALHOST, ((InetSocketAddress) address).getPort()); DataInput in = new DataInputStream(s.getInputStream()); byte[] buf = new byte[3];