8004925: java/net/Socks/SocksV4Test.java failing on all platforms
Reviewed-by: alanb, dsamersoff
--- a/jdk/test/java/net/Socks/SocksV4Test.java Wed Dec 12 20:57:45 2012 -0500
+++ b/jdk/test/java/net/Socks/SocksV4Test.java Thu Dec 13 09:55:55 2012 +0000
@@ -26,20 +26,26 @@
* @bug 4727547
* @summary SocksSocketImpl throws NullPointerException
* @build SocksServer
- * @run main SocksV4Test
*/
import java.net.*;
public class SocksV4Test {
+
+ // An unresolvable host
+ static final String HOSTNAME = "doesnot.exist.invalid";
+
public static void main(String[] args) throws Exception {
+ // sanity before running the test
+ assertUnresolvableHost(HOSTNAME);
+
// Create a SOCKS V4 proxy
SocksServer srvr = new SocksServer(0, true);
srvr.start();
Proxy sp = new Proxy(Proxy.Type.SOCKS,
new InetSocketAddress("localhost", srvr.getPort()));
// Let's create an unresolved address
- InetSocketAddress ad = new InetSocketAddress("doesnt.exist.name", 1234);
+ InetSocketAddress ad = new InetSocketAddress(HOSTNAME, 1234);
try (Socket s = new Socket(sp)) {
s.connect(ad, 10000);
} catch (UnknownHostException ex) {
@@ -51,4 +57,15 @@
srvr.terminate();
}
}
+
+ static void assertUnresolvableHost(String host) {
+ InetAddress addr = null;
+ try {
+ addr = InetAddress.getByName(host);
+ } catch (UnknownHostException x) {
+ // OK, expected
+ }
+ if (addr != null)
+ throw new RuntimeException("Test cannot run. resolvable address:" + addr);
+ }
}