Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 4AFF5200AC8 for ; Tue, 24 May 2016 00:01:13 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 497D5160A0E; Mon, 23 May 2016 22:01:13 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 4B029160A24 for ; Tue, 24 May 2016 00:01:11 +0200 (CEST) Received: (qmail 42243 invoked by uid 500); 23 May 2016 22:01:10 -0000 Mailing-List: contact commits-help@geode.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@geode.incubator.apache.org Delivered-To: mailing list commits@geode.incubator.apache.org Received: (qmail 42234 invoked by uid 99); 23 May 2016 22:01:10 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 May 2016 22:01:10 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id EB41CCC5CC for ; Mon, 23 May 2016 22:01:09 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -4.646 X-Spam-Level: X-Spam-Status: No, score=-4.646 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id U4SsDlD_trWQ for ; Mon, 23 May 2016 22:01:05 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with SMTP id ADAE15F471 for ; Mon, 23 May 2016 22:01:04 +0000 (UTC) Received: (qmail 40914 invoked by uid 99); 23 May 2016 22:01:04 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 May 2016 22:01:04 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id C1B9FE0446; Mon, 23 May 2016 22:01:03 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: upthewaterspout@apache.org To: commits@geode.incubator.apache.org Date: Mon, 23 May 2016 22:01:07 -0000 Message-Id: In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [05/11] incubator-geode git commit: GEODE-1367: Replaced server-port with "0". Cleaned up some code with cleaner Lambda invocations. Replaced waitOnCriterion with Awaitility archived-at: Mon, 23 May 2016 22:01:13 -0000 http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/8bc3481c/geode-assembly/src/test/java/com/gemstone/gemfire/rest/internal/web/controllers/RestAPIsWithSSLDUnitTest.java ---------------------------------------------------------------------- diff --git a/geode-assembly/src/test/java/com/gemstone/gemfire/rest/internal/web/controllers/RestAPIsWithSSLDUnitTest.java b/geode-assembly/src/test/java/com/gemstone/gemfire/rest/internal/web/controllers/RestAPIsWithSSLDUnitTest.java index 2e80ebf..331dc9d 100644 --- a/geode-assembly/src/test/java/com/gemstone/gemfire/rest/internal/web/controllers/RestAPIsWithSSLDUnitTest.java +++ b/geode-assembly/src/test/java/com/gemstone/gemfire/rest/internal/web/controllers/RestAPIsWithSSLDUnitTest.java @@ -19,7 +19,6 @@ package com.gemstone.gemfire.rest.internal.web.controllers; import com.gemstone.gemfire.cache.*; import com.gemstone.gemfire.cache.client.ClientCache; import com.gemstone.gemfire.cache.client.ClientCacheFactory; -import com.gemstone.gemfire.cache.client.ClientRegionFactory; import com.gemstone.gemfire.cache.client.ClientRegionShortcut; import com.gemstone.gemfire.cache.client.internal.LocatorTestBase; import com.gemstone.gemfire.cache.server.CacheServer; @@ -31,7 +30,10 @@ import com.gemstone.gemfire.internal.AvailablePortHelper; import com.gemstone.gemfire.internal.cache.GemFireCacheImpl; import com.gemstone.gemfire.management.ManagementException; import com.gemstone.gemfire.management.ManagementTestBase; -import com.gemstone.gemfire.test.dunit.*; +import com.gemstone.gemfire.test.dunit.Host; +import com.gemstone.gemfire.test.dunit.IgnoredException; +import com.gemstone.gemfire.test.dunit.NetworkUtils; +import com.gemstone.gemfire.test.dunit.VM; import com.gemstone.gemfire.util.test.TestUtil; import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; @@ -47,13 +49,12 @@ import javax.net.ssl.SSLContext; import java.io.*; import java.net.BindException; import java.security.KeyStore; -import java.util.Calendar; +import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.Properties; /** - * * @since 8.0 */ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { @@ -63,13 +64,13 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { private ManagementTestBase helper; private final String PEOPLE_REGION_NAME = "People"; - + private File jks; public RestAPIsWithSSLDUnitTest(String name) { super(name); this.helper = new ManagementTestBase(name); - this.jks = findTrustedJKS(); + this.jks = findTrustedJKS(); } @@ -85,32 +86,22 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { } private File findTrustedJKS() { - if(jks == null){ + if (jks == null) { jks = new File(TestUtil.getResourcePath(RestAPIsWithSSLDUnitTest.class, "/ssl/trusted.keystore")); } return jks; } - public String startBridgeServerWithRestServiceOnInVM(final VM vm, final String locators, final String[] regions, - final Properties sslProperties, final boolean clusterLevel) { - - final String hostName = vm.getHost().getHostName(); - final int serverPort = AvailablePortHelper.getRandomAvailableTCPPort(); - vm.invoke("startBridge", () -> startBridgeServer(hostName,serverPort,locators,regions,sslProperties,clusterLevel)); - return "https://" + hostName + ":" + serverPort + "/gemfire-api/v1"; - - } - @SuppressWarnings("deprecation") - protected int startBridgeServer(String hostName, int restServicerPort, final String locators, final String[] regions, + protected int startBridgeServer(String hostName, int restServicePort, final String locators, final String[] regions, final Properties sslProperties, boolean clusterLevel) { Properties props = new Properties(); - props.setProperty(DistributionConfig.MCAST_PORT_NAME, String.valueOf(0)); + props.setProperty(DistributionConfig.MCAST_PORT_NAME, "0"); props.setProperty(DistributionConfig.LOCATORS_NAME, locators); props.setProperty(DistributionConfig.START_DEV_REST_API_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_BIND_ADDRESS_NAME, hostName); - props.setProperty(DistributionConfig.HTTP_SERVICE_PORT_NAME, String.valueOf(restServicerPort)); + props.setProperty(DistributionConfig.HTTP_SERVICE_PORT_NAME, String.valueOf(restServicePort)); System.setProperty("javax.net.debug", "ssl,handshake"); configureSSL(props, sslProperties, clusterLevel); @@ -118,8 +109,8 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { DistributedSystem ds = getSystem(props); Cache cache = CacheFactory.create(ds); ((GemFireCacheImpl) cache).setReadSerialized(true); - AttributesFactory factory = new AttributesFactory(); + AttributesFactory factory = new AttributesFactory(); factory.setEnableBridgeConflation(true); factory.setDataPolicy(DataPolicy.REPLICATE); RegionAttributes attrs = factory.create(); @@ -128,81 +119,45 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { } CacheServer server = cache.addCacheServer(); - final int serverPort = AvailablePortHelper.getRandomAvailableTCPPort(); - server.setPort(serverPort); + server.setPort(0); try { server.start(); } catch (IOException e) { e.printStackTrace(); } remoteObjects.put(CACHE_KEY, cache); - return new Integer(serverPort); + return new Integer(server.getPort()); } public void doPutsInClientCache() { - ClientCache cache = GemFireCacheImpl.getInstance(); - assertNotNull(cache); - Region region = cache.getRegion(PEOPLE_REGION_NAME); + ClientCache clientCache = ClientCacheFactory.getAnyInstance(); + assertNotNull(clientCache); + Region region = clientCache.getRegion(PEOPLE_REGION_NAME); // put person object - final Person person1 = new Person(101L, "Mithali", "Dorai", "Raj", DateTimeUtils.createDate(1982, - Calendar.DECEMBER, 4), Gender.FEMALE); - final Person person2 = new Person(102L, "Sachin", "Ramesh", "Tendulkar", DateTimeUtils.createDate(1975, - Calendar.DECEMBER, 14), Gender.MALE); - final Person person3 = new Person(103L, "Saurabh", "Baburav", "Ganguly", DateTimeUtils.createDate(1972, - Calendar.AUGUST, 29), Gender.MALE); - final Person person4 = new Person(104L, "Rahul", "subrymanyam", "Dravid", DateTimeUtils.createDate(1979, - Calendar.MARCH, 17), Gender.MALE); - final Person person5 = new Person(105L, "Jhulan", "Chidambaram", "Goswami", DateTimeUtils.createDate(1983, - Calendar.NOVEMBER, 25), Gender.FEMALE); - - region.put("1", person1); - region.put("2", person2); - region.put("3", person3); - region.put("4", person4); - region.put("5", person5); - - final Person person6 = new Person(101L, "Rahul", "Rajiv", "Gndhi", - DateTimeUtils.createDate(1970, Calendar.MAY, 14), Gender.MALE); - final Person person7 = new Person(102L, "Narendra", "Damodar", "Modi", DateTimeUtils.createDate(1945, - Calendar.DECEMBER, 24), Gender.MALE); - final Person person8 = new Person(103L, "Atal", "Bihari", "Vajpayee", DateTimeUtils.createDate(1920, - Calendar.AUGUST, 9), Gender.MALE); - final Person person9 = new Person(104L, "Soniya", "Rajiv", "Gandhi", DateTimeUtils.createDate(1929, Calendar.MARCH, - 27), Gender.FEMALE); - final Person person10 = new Person(104L, "Priyanka", "Robert", "Gandhi", DateTimeUtils.createDate(1973, - Calendar.APRIL, 15), Gender.FEMALE); - - final Person person11 = new Person(104L, "Murali", "Manohar", "Joshi", DateTimeUtils.createDate(1923, - Calendar.APRIL, 25), Gender.MALE); - final Person person12 = new Person(104L, "Lalkrishna", "Parmhansh", "Advani", DateTimeUtils.createDate(1910, - Calendar.JANUARY, 01), Gender.MALE); - final Person person13 = new Person(104L, "Shushma", "kumari", "Swaraj", DateTimeUtils.createDate(1943, - Calendar.AUGUST, 10), Gender.FEMALE); - final Person person14 = new Person(104L, "Arun", "raman", "jetly", DateTimeUtils.createDate(1942, Calendar.OCTOBER, - 27), Gender.MALE); - final Person person15 = new Person(104L, "Amit", "kumar", "shah", DateTimeUtils.createDate(1958, Calendar.DECEMBER, - 21), Gender.MALE); - final Person person16 = new Person(104L, "Shila", "kumari", "Dixit", DateTimeUtils.createDate(1927, - Calendar.FEBRUARY, 15), Gender.FEMALE); + region.put("1", new Person(101L, "Mithali", "Dorai", "Raj", new Date(), Gender.FEMALE)); + region.put("2", new Person(102L, "Sachin", "Ramesh", "Tendulkar", new Date(), Gender.MALE)); + region.put("3", new Person(103L, "Saurabh", "Baburav", "Ganguly", new Date(), Gender.MALE)); + region.put("4", new Person(104L, "Rahul", "subrymanyam", "Dravid", new Date(), Gender.MALE)); + region.put("5", new Person(105L, "Jhulan", "Chidambaram", "Goswami", new Date(), Gender.FEMALE)); Map userMap = new HashMap(); - userMap.put("6", person6); - userMap.put("7", person7); - userMap.put("8", person8); - userMap.put("9", person9); - userMap.put("10", person10); - userMap.put("11", person11); - userMap.put("12", person12); - userMap.put("13", person13); - userMap.put("14", person14); - userMap.put("15", person15); - userMap.put("16", person16); + userMap.put("6", new Person(101L, "Rahul", "Rajiv", "Gndhi", new Date(), Gender.MALE)); + userMap.put("7", new Person(102L, "Narendra", "Damodar", "Modi", new Date(), Gender.MALE)); + userMap.put("8", new Person(103L, "Atal", "Bihari", "Vajpayee", new Date(), Gender.MALE)); + userMap.put("9", new Person(104L, "Soniya", "Rajiv", "Gandhi", new Date(), Gender.FEMALE)); + userMap.put("10", new Person(104L, "Priyanka", "Robert", "Gandhi", new Date(), Gender.FEMALE)); + userMap.put("11", new Person(104L, "Murali", "Manohar", "Joshi", new Date(), Gender.MALE)); + userMap.put("12", new Person(104L, "Lalkrishna", "Parmhansh", "Advani", new Date(), Gender.MALE)); + userMap.put("13", new Person(104L, "Shushma", "kumari", "Swaraj", new Date(), Gender.FEMALE)); + userMap.put("14", new Person(104L, "Arun", "raman", "jetly", new Date(), Gender.MALE)); + userMap.put("15", new Person(104L, "Amit", "kumar", "shah", new Date(), Gender.MALE)); + userMap.put("16", new Person(104L, "Shila", "kumari", "Dixit", new Date(), Gender.FEMALE)); region.putAll(userMap); - if (cache != null) - cache.getLogger().info("Gemfire Cache Client: Puts successfully done"); + if (clientCache != null) + clientCache.getLogger().info("Gemfire Cache Client: Puts successfully done"); } @@ -217,24 +172,33 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { // start locator int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(locator, locatorPort, ""); + locator.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(locator.getHost()), locatorPort, "")); // find locators String locators = NetworkUtils.getServerHostName(locator.getHost()) + "[" + locatorPort + "]"; // start manager (peer cache) - startManagerInVM(manager, locators, new String[] { REGION_NAME }, sslProperties); + manager.invoke("StartManager", () -> startManager(locators, new String[] { REGION_NAME }, sslProperties)); // start startBridgeServer With RestService enabled - String restEndpoint = startBridgeServerWithRestServiceOnInVM(server, locators, new String[] { REGION_NAME }, - sslProperties, clusterLevel); + String restEndpoint = server.invoke("startBridgeServerWithRestServiceOnInVM", () -> { + final String hostName = server.getHost().getHostName(); + final int restServicePort = AvailablePortHelper.getRandomAvailableTCPPort(); + startBridgeServer(hostName, restServicePort, locators, new String[] { REGION_NAME }, sslProperties, clusterLevel); + return "https://" + hostName + ":" + restServicePort + "/gemfire-api/v1"; + }); // create a client cache - createClientCacheInVM(client, NetworkUtils.getServerHostName(locator.getHost()), locatorPort); + client.invoke("Create ClientCache", () -> { + new ClientCacheFactory() + .setPdxReadSerialized(true) + .addPoolLocator(NetworkUtils.getServerHostName(locator.getHost()), locatorPort).create(); + return null; + }); // create region in Manager, peer cache and Client cache nodes - manager.invoke("createRegionInManager",() -> createRegionInManager()); - server.invoke("createRegionInPeerServer", () -> createRegionInPeerServer()); + manager.invoke("createRegionInManager", () -> createRegionInCache()); + server.invoke("createRegionInPeerServer", () -> createRegionInCache()); client.invoke("createRegionInClientCache", () -> createRegionInClientCache()); // do some person puts from clientcache @@ -260,191 +224,114 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { helper.closeCache(client); } - private void createClientCacheInVM(VM vm, final String host, final int port) throws Exception { - SerializableRunnable connect = new SerializableRunnable("Start Cache client") { - public void run() { - // Connect using the GemFire locator and create a Caching_Proxy cache - ClientCache clientCache = new ClientCacheFactory().setPdxReadSerialized(true).addPoolLocator(host, port).create(); - clientCache.createClientRegionFactory(ClientRegionShortcut.PROXY).create(REGION_NAME); - } - }; - - if (vm == null) { - connect.run(); - } else { - vm.invoke(connect); + private void sslPropertyConverter(Properties properties, Properties newProperties, String propertyName, String newPropertyName) { + String property = properties.getProperty(propertyName); + if (property != null) { + newProperties.setProperty((newPropertyName != null ? newPropertyName : propertyName), property); } } private void configureSSL(Properties props, Properties sslProperties, boolean clusterLevel) { - if(clusterLevel){ - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_ENABLED_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_KEYSTORE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_KEYSTORE_PASSWORD_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_KEYSTORE_TYPE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_PROTOCOLS_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_TRUSTSTORE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME) != null) { - props.setProperty(DistributionConfig.CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME)); - } - - }else{ - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME)); - } - if (sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME) != null) { - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME, - sslProperties.getProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME)); - } - + if (clusterLevel) { + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, DistributionConfig.CLUSTER_SSL_ENABLED_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, DistributionConfig.CLUSTER_SSL_KEYSTORE_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, + DistributionConfig.CLUSTER_SSL_KEYSTORE_PASSWORD_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME, DistributionConfig.CLUSTER_SSL_KEYSTORE_TYPE_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, DistributionConfig.CLUSTER_SSL_PROTOCOLS_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME, + DistributionConfig.CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME, DistributionConfig.CLUSTER_SSL_TRUSTSTORE_NAME); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME, + DistributionConfig.CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME); + } else { + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME, null); + sslPropertyConverter(sslProperties, props, DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME, null); } - - } - private int startManagerInVM(VM vm, final String locators, final String[] regions, final Properties sslProperties) { - + private void startManager(final String locators, final String[] regions, final Properties sslProperties) throws IOException { + IgnoredException.addIgnoredException("java.net.BindException"); IgnoredException.addIgnoredException("java.rmi.server.ExportException"); IgnoredException.addIgnoredException("com.gemstone.gemfire.management.ManagementException"); - - SerializableCallable connect = new SerializableCallable("Start Manager ") { - public Object call() throws IOException { - Properties props = new Properties(); - props.setProperty(DistributionConfig.MCAST_PORT_NAME, String.valueOf(0)); - props.setProperty(DistributionConfig.LOCATORS_NAME, locators); - props.setProperty("jmx-manager", "true"); - props.setProperty("jmx-manager-start", "true"); - - Cache cache = null; - while (true) { - try { - configureSSL(props, sslProperties, false); - DistributedSystem ds = getSystem(props); - System.out.println("Creating cache with http-service-port " + props.getProperty("http-service-port", "7070") - + " and jmx-manager-port " + props.getProperty("jmx-manager-port", "1099")); - cache = CacheFactory.create(ds); - System.out.println("Successfully created cache."); - break; + + Properties props = new Properties(); + props.setProperty(DistributionConfig.MCAST_PORT_NAME, "0"); + props.setProperty(DistributionConfig.LOCATORS_NAME, locators); + props.setProperty("jmx-manager", "true"); + props.setProperty("jmx-manager-start", "true"); + + Cache cache = null; + configureSSL(props, sslProperties, false); + while (true) { + try { + DistributedSystem ds = getSystem(props); + System.out.println("Creating cache with http-service-port " + props.getProperty("http-service-port", "7070") + + " and jmx-manager-port " + props.getProperty("jmx-manager-port", "1099")); + cache = CacheFactory.create(ds); + System.out.println("Successfully created cache."); + break; + } catch (ManagementException ex) { + if ((ex.getCause() instanceof BindException) + || (ex.getCause() != null && ex.getCause().getCause() instanceof BindException)) { + //close cache and disconnect + GemFireCacheImpl existingInstance = GemFireCacheImpl.getInstance(); + if (existingInstance != null) { + existingInstance.close(); } - catch (ManagementException ex) { - if ((ex.getCause() instanceof BindException) - || (ex.getCause() != null && ex.getCause().getCause() instanceof BindException)) { - //close cache and disconnect - GemFireCacheImpl existingInstance = GemFireCacheImpl.getInstance(); - if (existingInstance != null) { - existingInstance.close(); - } - InternalDistributedSystem ids = InternalDistributedSystem - .getConnectedInstance(); - if (ids != null) { - ids.disconnect(); - } - //try a different port - int httpServicePort = AvailablePortHelper.getRandomAvailableTCPPort(); - int jmxManagerPort = AvailablePortHelper.getRandomAvailableTCPPort(); - props.setProperty("http-service-port", Integer.toString(httpServicePort)); - props.setProperty("jmx-manager-port", Integer.toString(jmxManagerPort)); - System.out.println("Try a different http-service-port " + httpServicePort); - System.out.println("Try a different jmx-manager-port " + jmxManagerPort); - } - else { - throw ex; - } + InternalDistributedSystem ids = InternalDistributedSystem + .getConnectedInstance(); + if (ids != null) { + ids.disconnect(); } - } - AttributesFactory factory = new AttributesFactory(); - - factory.setEnableBridgeConflation(true); - factory.setDataPolicy(DataPolicy.REPLICATE); - RegionAttributes attrs = factory.create(); - for (int i = 0; i < regions.length; i++) { - cache.createRegion(regions[i], attrs); + //try a different port + int httpServicePort = AvailablePortHelper.getRandomAvailableTCPPort(); + int jmxManagerPort = AvailablePortHelper.getRandomAvailableTCPPort(); + props.setProperty("http-service-port", Integer.toString(httpServicePort)); + props.setProperty("jmx-manager-port", Integer.toString(jmxManagerPort)); + System.out.println("Try a different http-service-port " + httpServicePort); + System.out.println("Try a different jmx-manager-port " + jmxManagerPort); + } else { + throw ex; } - CacheServer server = cache.addCacheServer(); - final int serverPort = AvailablePortHelper.getRandomAvailableTCPPort(); - server.setPort(serverPort); - server.start(); - - return new Integer(serverPort); } - }; - Integer port = (Integer) vm.invoke(connect); - return port.intValue(); + } + AttributesFactory factory = new AttributesFactory(); + + factory.setEnableBridgeConflation(true); + factory.setDataPolicy(DataPolicy.REPLICATE); + RegionAttributes attrs = factory.create(); + for (int i = 0; i < regions.length; i++) { + cache.createRegion(regions[i], attrs); + } + CacheServer server = cache.addCacheServer(); + server.setPort(0); + server.start(); } private void createRegionInClientCache() { - ClientCache cache = GemFireCacheImpl.getInstance(); - assertNotNull(cache); - ClientRegionFactory crf = cache.createClientRegionFactory(ClientRegionShortcut.PROXY); - crf.create(PEOPLE_REGION_NAME); + ClientCache clientCache = ClientCacheFactory.getAnyInstance(); + assertNotNull(clientCache); + clientCache.createClientRegionFactory(ClientRegionShortcut.PROXY).create(PEOPLE_REGION_NAME); + clientCache.createClientRegionFactory(ClientRegionShortcut.PROXY).create(REGION_NAME); } - private void createRegionInManager() { + private void createRegionInCache() { Cache cache = GemFireCacheImpl.getInstance(); assertNotNull(cache); - RegionFactory rf = cache.createRegionFactory(RegionShortcut.REPLICATE); - rf.create(PEOPLE_REGION_NAME); + RegionFactory regionFactory = cache.createRegionFactory(RegionShortcut.REPLICATE); + regionFactory.create(PEOPLE_REGION_NAME); } - private void createRegionInPeerServer() { - Cache cache = GemFireCacheImpl.getInstance(); - assertNotNull(cache); - RegionFactory rf = cache.createRegionFactory(RegionShortcut.REPLICATE); - rf.create(PEOPLE_REGION_NAME); - } - - private CloseableHttpClient getSSLBasedHTTPClient(String algo) throws Exception { - + private CloseableHttpClient getSSLBasedHTTPClient() throws Exception { File jks = findTrustedJKS(); KeyStore clientKeys = KeyStore.getInstance("JKS"); @@ -454,7 +341,7 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { SSLContext sslcontext = SSLContexts.custom() .loadTrustMaterial(clientKeys, new TrustSelfSignedStrategy()) .loadKeyMaterial(clientKeys, "password".toCharArray()) - .build(); + .build(); // Host checking is disabled here , as tests might run on multiple hosts and // host entries can not be assumed @@ -466,7 +353,7 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { return httpclient; } - private void validateConnection(String restEndpoint, String algo) { + private void validateConnection(String restEndpoint) { try { // 1. Get on key="1" and validate result. @@ -475,8 +362,7 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { get.addHeader("Content-Type", "application/json"); get.addHeader("Accept", "application/json"); - - CloseableHttpClient httpclient = getSSLBasedHTTPClient(algo); + CloseableHttpClient httpclient = getSSLBasedHTTPClient(); CloseableHttpResponse response = httpclient.execute(get); HttpEntity entity = response.getEntity(); @@ -501,7 +387,7 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { throw new RuntimeException("unexpected exception", e); } } - + // Actual Tests starts here. public void testSimpleSSL() throws Exception { @@ -511,90 +397,80 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME, "JKS"); - String restEndpoint = startInfraWithSSL(props,false); - validateConnection(restEndpoint, "SSL"); + validateConnection(startInfraWithSSL(props, false)); } - - public void testSSLWithoutKeyStoreType() throws Exception { - + public void testSSLWithoutKeyStoreType() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "SSL"); + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithSSLProtocol() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"SSL"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "SSL"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "SSL"); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithTLSProtocol() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"TLS"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLS"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "TLS"); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithTLSv11Protocol() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"TLSv1.1"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLSv1.1"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "TLSv1.1"); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithTLSv12Protocol() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"TLSv1.2"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLSv1.2"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "TLSv1.2"); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testWithMultipleProtocol() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"SSL,TLSv1.2"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLSv1.2"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "SSL,TLSv1.2"); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithCipherSuite() throws Exception { System.setProperty("javax.net.debug", "ssl"); @@ -602,57 +478,51 @@ public class RestAPIsWithSSLDUnitTest extends LocatorTestBase { props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"TLSv1.2"); - + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "TLSv1.2"); + SSLContext ssl = SSLContext.getInstance("TLSv1.2"); - + ssl.init(null, null, new java.security.SecureRandom()); String[] cipherSuites = ssl.getSocketFactory().getSupportedCipherSuites(); - - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_CIPHERS_NAME,cipherSuites[0]); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLSv1.2"); + + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_CIPHERS_NAME, cipherSuites[0]); + + validateConnection(startInfraWithSSL(props, false)); } - + public void testSSLWithMultipleCipherSuite() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"TLSv1.2"); - + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "TLSv1.2"); + SSLContext ssl = SSLContext.getInstance("TLSv1.2"); - + ssl.init(null, null, new java.security.SecureRandom()); String[] cipherSuites = ssl.getSocketFactory().getSupportedCipherSuites(); - - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_CIPHERS_NAME,cipherSuites[0]+","+cipherSuites[1]); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "TLSv1.2"); + + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_CIPHERS_NAME, cipherSuites[0] + "," + cipherSuites[1]); + + validateConnection(startInfraWithSSL(props, false)); } - - + public void testMutualAuthentication() throws Exception { Properties props = new Properties(); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_ENABLED_NAME, "true"); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_NAME, jks.getCanonicalPath()); props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME, "password"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME,"SSL"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME,"true"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_PROTOCOLS_NAME, "SSL"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME, "true"); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME,jks.getCanonicalPath()); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_NAME, jks.getCanonicalPath()); - props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME,"password"); - - String restEndpoint = startInfraWithSSL(props, false); - validateConnection(restEndpoint, "SSL"); + props.setProperty(DistributionConfig.HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME, "password"); + validateConnection(startInfraWithSSL(props, false)); } - } http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/8bc3481c/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceDUnitTest.java ---------------------------------------------------------------------- diff --git a/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceDUnitTest.java b/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceDUnitTest.java index cfcff5e..0488e23 100644 --- a/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceDUnitTest.java +++ b/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceDUnitTest.java @@ -16,15 +16,6 @@ */ package com.gemstone.gemfire.cache.client.internal; -import java.io.Serializable; -import java.net.BindException; -import java.net.InetSocketAddress; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; - -import junit.framework.Assert; - import com.gemstone.gemfire.cache.Cache; import com.gemstone.gemfire.cache.Region; import com.gemstone.gemfire.cache.client.NoAvailableLocatorsException; @@ -37,22 +28,23 @@ import com.gemstone.gemfire.internal.AvailablePortHelper; import com.gemstone.gemfire.management.membership.ClientMembership; import com.gemstone.gemfire.management.membership.ClientMembershipEvent; import com.gemstone.gemfire.management.membership.ClientMembershipListenerAdapter; -import com.gemstone.gemfire.test.dunit.Host; -import com.gemstone.gemfire.test.dunit.IgnoredException; -import com.gemstone.gemfire.test.dunit.NetworkUtils; -import com.gemstone.gemfire.test.dunit.SerializableCallable; -import com.gemstone.gemfire.test.dunit.SerializableRunnable; -import com.gemstone.gemfire.test.dunit.VM; -import com.gemstone.gemfire.test.dunit.Wait; +import com.gemstone.gemfire.test.dunit.*; +import org.junit.Assert; + +import java.io.Serializable; +import java.net.BindException; +import java.net.InetSocketAddress; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; /** * Tests cases that are particular for the auto connection source - * - dynamically discovering servers, locators, handling + * - dynamically discovering servers, locators, handling * locator disappearance, etc. - * */ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { - + protected static final Object BRIDGE_LISTENER = "BRIDGE_LISTENER"; private static final long MAX_WAIT = 60000; @@ -64,84 +56,88 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { public AutoConnectionSourceDUnitTest(String name) { super(name); } - + public void testDiscoverBridgeServers() throws Exception { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); - + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(vm0, locatorPort, ""); - - String locators = NetworkUtils.getServerHostName(vm0.getHost())+ "[" + locatorPort + "]"; - - startBridgeServerInVM(vm1, null, locators); + String hostName = NetworkUtils.getServerHostName(vm0.getHost()); + vm0.invoke("Start Locator", () -> startLocator(hostName, locatorPort, "")); + + String locators = NetworkUtils.getServerHostName(vm0.getHost()) + "[" + locatorPort + "]"; - startBridgeClientInVM(vm2, null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); + vm1.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); + + vm2.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); putAndWaitForSuccess(vm2, REGION_NAME, "key", "value"); - + Assert.assertEquals("value", getInVM(vm1, "key")); } public void testNoLocators() { - + final Host host = Host.getHost(0); VM vm0 = host.getVM(0); - + try { - startBridgeClientInVM(vm0, null, NetworkUtils.getServerHostName(vm0.getHost()), AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET)); + vm0.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()) + , AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET))); putInVM(vm0, "key", "value"); fail("Client cache should not have been able to start"); - } catch(Exception e) { + } catch (Exception e) { //expected an exception } } - + public void testNoBridgeServer() { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); - + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(vm0, locatorPort, ""); - try { - startBridgeClientInVM(vm1, null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); + String hostName = NetworkUtils.getServerHostName(vm0.getHost()); + vm0.invoke("Start Locator", () -> startLocator(hostName, locatorPort, "")); + try { + vm1.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); putInVM(vm0, "key", "value"); fail("Client cache should not have been able to start"); - } catch(Exception e) { + } catch (Exception e) { //expected an exception } } - - public void testDynamicallyFindBridgeServer() throws Exception { + + public void testDynamicallyFindBridgeServer() throws Exception { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); VM vm3 = host.getVM(3); - + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(vm0, locatorPort, ""); - + String hostName = NetworkUtils.getServerHostName(vm0.getHost()); + vm0.invoke("Start Locator", () -> startLocator(hostName, locatorPort, "")); + String locators = NetworkUtils.getServerHostName(vm0.getHost()) + "[" + locatorPort + "]"; - - startBridgeServerInVM(vm1, null, locators); - - startBridgeClientInVM(vm2, null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); - + + vm1.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); + + vm2.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); + putAndWaitForSuccess(vm2, REGION_NAME, "key", "value"); - - startBridgeServerInVM(vm3, null, locators); - + + vm3.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); + stopBridgeMemberVM(vm1); - + putAndWaitForSuccess(vm2, REGION_NAME, "key2", "value2"); - + Assert.assertEquals("value2", getInVM(vm3, "key2")); } - + public void testDynamicallyFindLocators() throws Exception { try { final Host host = Host.getHost(0); @@ -150,59 +146,60 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); VM vm3 = host.getVM(3); - + int[] ports = AvailablePortHelper.getRandomAvailableTCPPorts(3); - + final int locatorPort0 = ports[0]; final int locatorPort1 = ports[1]; final int locatorPort3 = ports[2]; - String locators = getLocatorString(host, new int[] { locatorPort0, locatorPort1, locatorPort3}); - startLocatorInVM(vm0, locatorPort0, locators); - - startLocatorInVM(vm1, locatorPort1, locators); - startBridgeClientInVM(vm2, null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort0); - - InetSocketAddress locatorToWaitFor= new InetSocketAddress(hostName, locatorPort1); + String locators = getLocatorString(host, new int[] { locatorPort0, locatorPort1, locatorPort3 }); + vm0.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(vm0.getHost()), locatorPort0, locators)); + vm1.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(vm1.getHost()), locatorPort1, locators)); + + vm2.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort0)); + + InetSocketAddress locatorToWaitFor = new InetSocketAddress(hostName, locatorPort1); waitForLocatorDiscovery(vm2, locatorToWaitFor); - - stopLocatorInVM(vm0); - startBridgeServerInVM(vm0, null, locators); - + + vm0.invoke("Stop Locator", () -> stopLocator()); + vm0.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); + putAndWaitForSuccess(vm2, REGION_NAME, "key", "value"); Assert.assertEquals("value", getInVM(vm0, "key")); - - startLocatorInVM(vm3, locatorPort3, locators); + + vm3.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(vm3.getHost()), locatorPort3, locators)); stopBridgeMemberVM(vm0); - locatorToWaitFor= new InetSocketAddress(hostName, locatorPort3); + locatorToWaitFor = new InetSocketAddress(hostName, locatorPort3); waitForLocatorDiscovery(vm2, locatorToWaitFor); - stopLocatorInVM(vm1); - startBridgeServerInVM(vm1, null, locators); + vm1.invoke("Stop Locator", () -> stopLocator()); + vm1.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); putAndWaitForSuccess(vm2, REGION_NAME, "key2", "value2"); Assert.assertEquals("value2", getInVM(vm1, "key2")); - }catch(Exception ec) { - if(ec.getCause() != null && (ec.getCause().getCause() instanceof BindException)) + } catch (Exception ec) { + if (ec.getCause() != null && (ec.getCause().getCause() instanceof BindException)) return;//BindException let it pass throw ec; } } - - public void testEmbeddedLocator() throws Exception { + + public void testEmbeddedLocator() throws Exception { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); VM vm3 = host.getVM(3); - + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - + String locators = NetworkUtils.getServerHostName(vm0.getHost()) + "[" + locatorPort + "]"; - - startBridgeServerWithEmbeddedLocator(vm0, null, locators, new String[] {REGION_NAME}, CacheServer.DEFAULT_LOAD_PROBE); - - startBridgeClientInVM(vm2, null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); - + + vm0.invoke("Start BridgeServer", () -> startBridgeServerWithEmbeddedLocator(null, locators, new String[] { REGION_NAME } + , CacheServer.DEFAULT_LOAD_PROBE)); + + vm2.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); + putAndWaitForSuccess(vm2, REGION_NAME, "key", "value"); - + Assert.assertEquals("value", getInVM(vm2, "key")); } @@ -211,7 +208,7 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { vm.invoke(new SerializableCallable() { public Object call() throws InterruptedException { MyLocatorCallback callback = (MyLocatorCallback) remoteObjects.get(CALLBACK_KEY); - + boolean discovered = callback.waitForDiscovery(locatorToWaitFor, MAX_WAIT); Assert.assertTrue("Waited " + MAX_WAIT + " for " + locatorToWaitFor + " to be discovered on client. List is now: " @@ -220,85 +217,89 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + public void testServerGroups() throws Exception { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); VM vm3 = host.getVM(3); - + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(vm0, locatorPort, ""); - + vm0.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(vm0.getHost()), locatorPort, "")); + String locators = NetworkUtils.getServerHostName(vm0.getHost()) + "[" + locatorPort + "]"; - - startBridgeServerInVM(vm1, new String[] {"group1", "group2"} , locators, new String[] {"A", "B"}); - startBridgeServerInVM(vm2, new String[] {"group2", "group3"}, locators, new String[] {"B", "C"}); - - startBridgeClientInVM(vm3, "group1", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort, new String [] {"A", "B", "C"}); + vm1.invoke("Start BridgeServer", () -> startBridgeServer(new String[] { "group1", "group2" }, locators, new String[] { "A", "B" })); + vm2.invoke("Start BridgeServer", () -> startBridgeServer(new String[] { "group2", "group3" }, locators, new String[] { "B", "C" })); + + vm3.invoke("StartBridgeClient", () -> startBridgeClient("group1", NetworkUtils.getServerHostName(vm0.getHost()) + , locatorPort, new String[] { "A", "B", "C" })); putAndWaitForSuccess(vm3, "A", "key", "value"); Assert.assertEquals("value", getInVM(vm1, "A", "key")); try { putInVM(vm3, "C", "key2", "value2"); fail("Should not have been able to find Region C on the server"); - } catch(Exception expected) {} - + } catch (Exception expected) { + } + stopBridgeMemberVM(vm3); - - startBridgeClientInVM(vm3, "group3", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort, new String [] {"A", "B", "C"}); + + vm3.invoke("StartBridgeClient", () -> startBridgeClient("group3", NetworkUtils.getServerHostName(vm0.getHost()), + locatorPort, new String[] { "A", "B", "C" })); try { putInVM(vm3, "A", "key3", "value"); fail("Should not have been able to find Region A on the server"); - } catch(Exception expected) {} + } catch (Exception expected) { + } putInVM(vm3, "C", "key4", "value"); Assert.assertEquals("value", getInVM(vm2, "C", "key4")); - + stopBridgeMemberVM(vm3); - - startBridgeClientInVM(vm3, "group2", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort, new String [] {"A", "B", "C"}); + + vm3.invoke("StartBridgeClient", () -> startBridgeClient("group2", NetworkUtils.getServerHostName(vm0.getHost()), + locatorPort, new String[] { "A", "B", "C" })); putInVM(vm3, "B", "key5", "value"); Assert.assertEquals("value", getInVM(vm1, "B", "key5")); Assert.assertEquals("value", getInVM(vm2, "B", "key5")); - + stopBridgeMemberVM(vm1); putInVM(vm3, "B", "key6", "value"); Assert.assertEquals("value", getInVM(vm2, "B", "key6")); - startBridgeServerInVM(vm1, new String[] {"group1", "group2"} , locators, new String[] {"A", "B"}); + vm1.invoke("Start BridgeServer", () -> startBridgeServer(new String[] { "group1", "group2" }, locators, new String[] { "A", "B" })); stopBridgeMemberVM(vm2); - + putInVM(vm3, "B", "key7", "value"); Assert.assertEquals("value", getInVM(vm1, "B", "key7")); } - + public void testTwoServersInSameVM() throws Exception { final Host host = Host.getHost(0); VM vm0 = host.getVM(0); VM vm1 = host.getVM(1); VM vm2 = host.getVM(2); -// VM vm3 = host.getVM(3); - + // VM vm3 = host.getVM(3); + int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - - startLocatorInVM(vm0, locatorPort, ""); - + + vm0.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(vm0.getHost()), locatorPort, "")); + final String locators = NetworkUtils.getServerHostName(vm0.getHost()) + "[" + locatorPort + "]"; - - final int serverPort1 =startBridgeServerInVM(vm1, new String[] {"group1"}, locators); - final int serverPort2 =addCacheServerInVM(vm1, new String[] {"group2"}); - - startBridgeClientInVM(vm2, "group2", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); - - checkEndpoints(vm2, new int[] {serverPort2}); - + + final int serverPort1 = vm1.invoke("Start BridgeServer", () -> startBridgeServer(new String[] { "group1" }, locators)); + final int serverPort2 = vm1.invoke("Start CacheServer", () -> addCacheServer(new String[] { "group2" })); + + vm2.invoke("StartBridgeClient", () -> startBridgeClient("group2", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); + + checkEndpoints(vm2, new int[] { serverPort2 }); + stopBridgeMemberVM(vm2); - startBridgeClientInVM(vm2, "group1", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort); - - checkEndpoints(vm2, new int[] {serverPort1}); + vm2.invoke("StartBridgeClient", () -> startBridgeClient("group1", NetworkUtils.getServerHostName(vm0.getHost()), locatorPort)); + + checkEndpoints(vm2, new int[] { serverPort1 }); } - + public void testClientMembershipListener() throws Exception { final Host host = Host.getHost(0); VM locatorVM = host.getVM(0); @@ -306,19 +307,20 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { VM bridge2VM = host.getVM(2); VM clientVM = host.getVM(3); int locatorPort = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET); - startLocatorInVM(locatorVM, locatorPort, ""); + locatorVM.invoke("Start Locator", () -> startLocator(NetworkUtils.getServerHostName(locatorVM.getHost()), locatorPort, "")); + String locators = NetworkUtils.getServerHostName(locatorVM.getHost()) + "[" + locatorPort + "]"; //start a bridge server with a listener addBridgeListener(bridge1VM); - int serverPort1 = startBridgeServerInVM(bridge1VM, null, locators); + int serverPort1 = bridge1VM.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); //start a bridge client with a listener addBridgeListener(clientVM); - startBridgeClientInVM(clientVM, null, NetworkUtils.getServerHostName(locatorVM.getHost()), locatorPort); + clientVM.invoke("StartBridgeClient", () -> startBridgeClient(null, NetworkUtils.getServerHostName(locatorVM.getHost()), locatorPort)); // wait for client to connect - checkEndpoints(clientVM, new int[] {serverPort1}); - + checkEndpoints(clientVM, new int[] { serverPort1 }); + //make sure the client and bridge server both noticed each other waitForJoin(bridge1VM); MyListener serverListener = getBridgeListener(bridge1VM); @@ -326,48 +328,48 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { Assert.assertEquals(0, serverListener.getDepartures()); Assert.assertEquals(1, serverListener.getJoins()); resetBridgeListener(bridge1VM); - + waitForJoin(clientVM); - MyListener clientListener= getBridgeListener(clientVM); + MyListener clientListener = getBridgeListener(clientVM); Assert.assertEquals(0, clientListener.getCrashes()); Assert.assertEquals(0, clientListener.getDepartures()); Assert.assertEquals(1, clientListener.getJoins()); resetBridgeListener(clientVM); - - checkEndpoints(clientVM, new int[] {serverPort1}); + + checkEndpoints(clientVM, new int[] { serverPort1 }); //start another bridge server and make sure it is detected by the client - int serverPort2 = startBridgeServerInVM(bridge2VM, null, locators); - - checkEndpoints(clientVM, new int[] {serverPort1, serverPort2}); + int serverPort2 = bridge2VM.invoke("Start BridgeServer", () -> startBridgeServer(null, locators)); + + checkEndpoints(clientVM, new int[] { serverPort1, serverPort2 }); serverListener = getBridgeListener(bridge1VM); Assert.assertEquals(0, serverListener.getCrashes()); Assert.assertEquals(0, serverListener.getDepartures()); Assert.assertEquals(0, serverListener.getJoins()); resetBridgeListener(bridge1VM); waitForJoin(clientVM); - clientListener= getBridgeListener(clientVM); + clientListener = getBridgeListener(clientVM); Assert.assertEquals(0, clientListener.getCrashes()); Assert.assertEquals(0, clientListener.getDepartures()); Assert.assertEquals(1, clientListener.getJoins()); resetBridgeListener(clientVM); - + //stop the second bridge server and make sure it is detected by the client stopBridgeMemberVM(bridge2VM); - - checkEndpoints(clientVM, new int[] {serverPort1}); + + checkEndpoints(clientVM, new int[] { serverPort1 }); serverListener = getBridgeListener(bridge1VM); Assert.assertEquals(0, serverListener.getCrashes()); Assert.assertEquals(0, serverListener.getDepartures()); Assert.assertEquals(0, serverListener.getJoins()); resetBridgeListener(bridge1VM); waitForCrash(clientVM); - clientListener= getBridgeListener(clientVM); + clientListener = getBridgeListener(clientVM); Assert.assertEquals(1, clientListener.getCrashes()); Assert.assertEquals(0, clientListener.getDepartures()); Assert.assertEquals(0, clientListener.getJoins()); resetBridgeListener(clientVM); - + //stop the client and make sure the bridge server notices stopBridgeMemberVM(clientVM); waitForDeparture(bridge1VM); @@ -380,7 +382,7 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { protected Object getInVM(VM vm, final Serializable key) { return getInVM(vm, REGION_NAME, key); } - + protected Object getInVM(VM vm, final String regionName, final Serializable key) { return vm.invoke(new SerializableCallable("Get in VM") { public Object call() throws Exception { @@ -390,23 +392,22 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - - protected void putAndWaitForSuccess(VM vm, final String regionName, final Serializable key, final Serializable value) throws InterruptedException - { + + protected void putAndWaitForSuccess(VM vm, final String regionName, final Serializable key, final Serializable value) throws InterruptedException { long endTime = System.currentTimeMillis() + MAX_WAIT; long remaining = MAX_WAIT; int i = 0; - while(true) { + while (true) { try { System.err.println("Attempt: " + (i++)); putInVM(vm, regionName, key, value); break; } catch (NoAvailableLocatorsException | com.gemstone.gemfire.test.dunit.RMIException e) { - if( !(e instanceof NoAvailableLocatorsException) + if (!(e instanceof NoAvailableLocatorsException) && !(e.getCause() instanceof NoAvailableServersException)) { throw e; } - if(remaining <= 0) { + if (remaining <= 0) { throw e; } Wait.pause(100); @@ -418,10 +419,8 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { protected void putInVM(VM vm, final Serializable key, final Serializable value) { putInVM(vm, REGION_NAME, key, value); } - - - - protected void putInVM(VM vm, final String regionName, final Serializable key, final Serializable value) { + + protected void putInVM(VM vm, final String regionName, final Serializable key, final Serializable value) { vm.invoke(new SerializableCallable("Put in VM") { public Object call() throws Exception { Cache cache = (Cache) remoteObjects.get(CACHE_KEY); @@ -430,11 +429,12 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + /** * Assert that there is one endpoint with the given host in port * on the client vm. - * @param vm - the vm the client is running in + * + * @param vm - the vm the client is running in * @param expectedPorts - The server ports we expect the client to be connected to. */ protected void checkEndpoints(VM vm, final int[] expectedPorts) { @@ -445,14 +445,14 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { List/**/ endpoints; HashSet actualEndpointPorts; HashSet expectedEndpointPorts = new HashSet(); - for(int i = 0; i < expectedPorts.length; i++) { + for (int i = 0; i < expectedPorts.length; i++) { expectedEndpointPorts.add(new Integer(expectedPorts[i])); } do { endpoints = pool.getCurrentServers(); actualEndpointPorts = new HashSet(); - for(Iterator itr = endpoints.iterator(); itr.hasNext();) { - ServerLocation sl = (ServerLocation)itr.next(); + for (Iterator itr = endpoints.iterator(); itr.hasNext(); ) { + ServerLocation sl = (ServerLocation) itr.next(); actualEndpointPorts.add(new Integer(sl.getPort())); } if (expectedEndpointPorts.size() == actualEndpointPorts.size()) { @@ -460,12 +460,12 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } else { Wait.pause(100); } - } while(retryCount-- > 0); + } while (retryCount-- > 0); Assert.assertEquals(expectedEndpointPorts, actualEndpointPorts); } }); } - + protected void addBridgeListener(VM vm) { vm.invoke(new SerializableRunnable("Add membership listener") { public void run() { @@ -475,7 +475,7 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + protected void resetBridgeListener(VM vm) { vm.invoke(new SerializableRunnable("Add membership listener") { public void run() { @@ -484,7 +484,7 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + private MyListener getBridgeListener(VM vm) { return (MyListener) vm.invoke(new SerializableCallable("Add membership listener") { public Object call() { @@ -492,17 +492,17 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + private void waitForJoin(VM vm) { vm.invoke(new SerializableRunnable() { public void run() { MyListener listener = (MyListener) remoteObjects.get(BRIDGE_LISTENER); - synchronized(listener) { + synchronized (listener) { long end = System.currentTimeMillis() + 10000; while (listener.joins == 0) { try { long remaining = end - System.currentTimeMillis(); - if(remaining < 0) { + if (remaining < 0) { break; } listener.wait(remaining); @@ -514,17 +514,17 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + private void waitForCrash(VM vm) { vm.invoke(new SerializableRunnable() { public void run() { MyListener listener = (MyListener) remoteObjects.get(BRIDGE_LISTENER); - synchronized(listener) { + synchronized (listener) { long end = System.currentTimeMillis() + 10000; - while (listener.crashes== 0) { + while (listener.crashes == 0) { try { long remaining = end - System.currentTimeMillis(); - if(remaining < 0) { + if (remaining < 0) { break; } listener.wait(remaining); @@ -536,17 +536,17 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + private void waitForDeparture(VM vm) { vm.invoke(new SerializableRunnable() { public void run() { MyListener listener = (MyListener) remoteObjects.get(BRIDGE_LISTENER); - synchronized(listener) { + synchronized (listener) { long end = System.currentTimeMillis() + 10000; while (listener.departures == 0) { try { long remaining = end - System.currentTimeMillis(); - if(remaining < 0) { + if (remaining < 0) { break; } listener.wait(remaining); @@ -558,11 +558,11 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { } }); } - + public static class MyListener extends ClientMembershipListenerAdapter implements Serializable { protected int crashes = 0; protected int joins = 0; - protected int departures= 0; + protected int departures = 0; @Override public synchronized void memberCrashed(ClientMembershipEvent event) { @@ -596,7 +596,7 @@ public class AutoConnectionSourceDUnitTest extends LocatorTestBase { return joins; } - public synchronized int getDepartures() { + public synchronized int getDepartures() { return departures; } } http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/8bc3481c/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceImplJUnitTest.java ---------------------------------------------------------------------- diff --git a/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceImplJUnitTest.java b/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceImplJUnitTest.java index 8deedc1..667af89 100644 --- a/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceImplJUnitTest.java +++ b/geode-core/src/test/java/com/gemstone/gemfire/cache/client/internal/AutoConnectionSourceImplJUnitTest.java @@ -144,27 +144,22 @@ public class AutoConnectionSourceImplJUnitTest { @Test public void testNoServers() throws Exception { - startFakeLocator(); handler.nextConnectionResponse = new ClientConnectionResponse(null); - assertEquals(null, source.findServer(null)); } @Test public void testDiscoverServers() throws Exception { startFakeLocator(); - ServerLocation loc1 = new ServerLocation("localhost", 4423); handler.nextConnectionResponse = new ClientConnectionResponse(loc1); - assertEquals(loc1, source.findServer(null)); } @Test public void testDiscoverLocators() throws Exception { startFakeLocator(); - int secondPort = AvailablePortHelper.getRandomAvailableTCPPort(); TcpServer server2 = new TcpServer(secondPort, InetAddress.getLocalHost(), null, null, handler, new FakeHelper(), Thread.currentThread().getThreadGroup(), "tcp server"); server2.start();