geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jinmeil...@apache.org
Subject geode git commit: GEODE-2261: fix the dunit test in nightly build
Date Tue, 17 Jan 2017 16:46:04 GMT
Repository: geode
Updated Branches:
  refs/heads/develop 45f7f9775 -> 6f9753fb2


GEODE-2261: fix the dunit test in nightly build

* separte the failing tests. Put WAN test into WAN's test and another into core's test


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/6f9753fb
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/6f9753fb
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/6f9753fb

Branch: refs/heads/develop
Commit: 6f9753fb26d063bf87ee3e7041ef9b228b9e169a
Parents: 45f7f97
Author: Jinmei Liao <jiliao@pivotal.io>
Authored: Mon Jan 16 20:56:51 2017 -0800
Committer: Jinmei Liao <jiliao@pivotal.io>
Committed: Tue Jan 17 08:45:50 2017 -0800

----------------------------------------------------------------------
 .../ClusterConfigDistributionDUnitTest.java     |  21 +-
 .../dunit/rules/GfshShellConnectionRule.java    |   1 +
 .../ClusterConfigurationDUnitTest.java          | 510 +++++++++++++++++++
 ...ClusterConfigurationExtensionsDUnitTest.java | 429 ----------------
 .../internal/configuration/WanDUnitTest.java    | 159 ------
 5 files changed, 530 insertions(+), 590 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/geode/blob/6f9753fb/geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigDistributionDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigDistributionDUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigDistributionDUnitTest.java
index d72e386..f362d4c 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigDistributionDUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigDistributionDUnitTest.java
@@ -17,6 +17,7 @@ package org.apache.geode.management.internal.configuration;
 
 import static org.apache.commons.io.FileUtils.writeByteArrayToFile;
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
@@ -28,6 +29,7 @@ import org.apache.geode.cache.asyncqueue.AsyncEventQueue;
 import org.apache.geode.cache.query.Index;
 import org.apache.geode.internal.ClassBuilder;
 import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.result.CommandResult;
 import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
 import org.apache.geode.test.dunit.internal.JUnit4DistributedTestCase;
 import org.apache.geode.test.dunit.rules.GfshShellConnectionRule;
@@ -62,6 +64,9 @@ public class ClusterConfigDistributionDUnitTest extends JUnit4DistributedTestCas
     gfshConnector = new GfshShellConnectionRule(locator);
     gfshConnector.connect();
     assertThat(gfshConnector.isConnected()).isTrue();
+
+    // start a server so that we can execute data commands that requires at least a server running
+    lsRule.startServerVM(1, locator.getPort());
   }
 
   @Rule
@@ -69,8 +74,6 @@ public class ClusterConfigDistributionDUnitTest extends JUnit4DistributedTestCas
 
   @Test
   public void testIndexAndAsyncEventQueueCommands() throws Exception {
-    lsRule.startServerVM(1, locator.getPort());
-
     final String DESTROY_REGION = "regionToBeDestroyed";
 
     gfshConnector
@@ -161,4 +164,18 @@ public class ClusterConfigDistributionDUnitTest extends JUnit4DistributedTestCas
     writeByteArrayToFile(jarFile, jarBytes);
     return queueCommandsJarName;
   }
+
+  @Test
+  public void testConfigurePDX() throws Exception {
+    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CONFIGURE_PDX);
+    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__AUTO__SERIALIZER__CLASSES, "com.foo.*");
+    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__IGNORE__UNREAD_FIELDS, "true");
+    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__PERSISTENT, "true");
+    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__READ__SERIALIZED, "true");
+
+    CommandResult result = gfshConnector.executeAndVerifyCommand(csb.getCommandString());
+    String message = (String) result.getResultData().getGfJsonObject().getJSONObject("content")
+        .getJSONArray("message").get(0);
+    assertEquals(CliStrings.CONFIGURE_PDX__NORMAL__MEMBERS__WARNING, message);
+  }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/6f9753fb/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
index 718c816..13442fd 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
@@ -98,6 +98,7 @@ public class GfshShellConnectionRule extends DescribedExternalResource {
     Awaitility.await().atMost(2, TimeUnit.MINUTES).pollDelay(2, TimeUnit.SECONDS).until(() -> {
       gfsh.executeCommand(connectCommand.toString());
       result.set((CommandResult) gfsh.getResult());
+      System.out.println("connect result: " + result.get().getContent().toString());
       return !gfsh.outputString.contains("no such object in table");
     });
 

http://git-wip-us.apache.org/repos/asf/geode/blob/6f9753fb/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java
new file mode 100644
index 0000000..8aa887b
--- /dev/null
+++ b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java
@@ -0,0 +1,510 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.management.internal.configuration;
+
+import static org.apache.commons.io.FileUtils.cleanDirectory;
+import static org.apache.commons.io.FileUtils.deleteDirectory;
+import static org.apache.geode.distributed.ConfigurationProperties.DEPLOY_WORKING_DIR;
+import static org.apache.geode.distributed.ConfigurationProperties.ENABLE_CLUSTER_CONFIGURATION;
+import static org.apache.geode.distributed.ConfigurationProperties.HTTP_SERVICE_PORT;
+import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER;
+import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_BIND_ADDRESS;
+import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_PORT;
+import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_START;
+import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
+import static org.apache.geode.distributed.ConfigurationProperties.LOG_LEVEL;
+import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
+import static org.apache.geode.distributed.ConfigurationProperties.NAME;
+import static org.apache.geode.distributed.ConfigurationProperties.USE_CLUSTER_CONFIGURATION;
+import static org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPort;
+import static org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPorts;
+import static org.apache.geode.management.internal.cli.CliUtil.getAllNormalMembers;
+import static org.apache.geode.test.dunit.Assert.assertEquals;
+import static org.apache.geode.test.dunit.Assert.assertFalse;
+import static org.apache.geode.test.dunit.Assert.assertNotNull;
+import static org.apache.geode.test.dunit.Assert.assertTrue;
+import static org.apache.geode.test.dunit.Host.getHost;
+import static org.apache.geode.test.dunit.IgnoredException.addIgnoredException;
+import static org.apache.geode.test.dunit.Wait.waitForCriterion;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.CacheFactory;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.RegionShortcut;
+import org.apache.geode.cache.wan.GatewayReceiver;
+import org.apache.geode.cache.wan.GatewaySender;
+import org.apache.geode.distributed.Locator;
+import org.apache.geode.distributed.internal.InternalLocator;
+import org.apache.geode.internal.admin.remote.ShutdownAllRequest;
+import org.apache.geode.internal.cache.GemFireCacheImpl;
+import org.apache.geode.internal.cache.extension.Extensible;
+import org.apache.geode.internal.cache.extension.Extension;
+import org.apache.geode.internal.cache.extension.mock.MockCacheExtension;
+import org.apache.geode.internal.cache.extension.mock.MockExtensionCommands;
+import org.apache.geode.internal.cache.extension.mock.MockRegionExtension;
+import org.apache.geode.internal.cache.xmlcache.XmlGenerator;
+import org.apache.geode.internal.cache.xmlcache.XmlParser;
+import org.apache.geode.management.cli.Result.Status;
+import org.apache.geode.management.internal.cli.HeadlessGfsh;
+import org.apache.geode.management.internal.cli.commands.CliCommandTestBase;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.result.CommandResult;
+import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
+import org.apache.geode.management.internal.configuration.domain.XmlEntity;
+import org.apache.geode.test.dunit.VM;
+import org.apache.geode.test.dunit.WaitCriterion;
+import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.FlakyTest;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.Set;
+
+@Category(DistributedTest.class)
+public class ClusterConfigurationDUnitTest extends CliCommandTestBase {
+
+  private static final int TIMEOUT = 10000;
+  private static final int INTERVAL = 500;
+
+  private static final String REPLICATE_REGION = "ReplicateRegion1";
+
+  private static final String dataMember = "DataMember";
+  private static final String newMember = "NewMember";
+
+  private static Set<String> serverNames = new HashSet<>();
+  private static Set<String> jarFileNames = new HashSet<>();
+
+  @Override
+  public final void postSetUpCliCommandTestBase() throws Exception {
+    disconnectAllFromDS();
+  }
+
+  @Override
+  public final void preTearDownCliCommandTestBase() throws Exception {
+    shutdownAll();
+
+    serverNames.clear();
+    jarFileNames.clear();
+  }
+
+  /**
+   * Tests for {@link Extension}, {@link Extensible}, {@link XmlParser}, {@link XmlGenerator},
+   * {@link XmlEntity} as it applies to Extensions. Asserts that Mock Extension is created and
+   * altered on region and cache.
+   * 
+   * @since GemFire 8.1
+   */
+  @Category(FlakyTest.class) // GEODE-1334
+  @Test
+  public void testCreateExtensions() throws Exception {
+    Object[] result = setup();
+    final int locatorPort = (Integer) result[0];
+
+    createRegion(REPLICATE_REGION, RegionShortcut.REPLICATE, null);
+    createMockRegionExtension(REPLICATE_REGION, "value1");
+    alterMockRegionExtension(REPLICATE_REGION, "value2");
+    createMockCacheExtension("value1");
+    alterMockCacheExtension("value2");
+
+    // Start a new member which receives the shared configuration
+    // Verify the config creation on this member
+
+    final String newMemberWorkDir =
+        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + newMember;
+
+    VM newMember = getHost(0).getVM(2);
+    newMember.invoke(() -> {
+      Properties localProps = new Properties();
+
+      File workingDir = new File(newMemberWorkDir);
+      workingDir.mkdirs();
+
+      localProps.setProperty(MCAST_PORT, "0");
+      localProps.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
+      localProps.setProperty(NAME, ClusterConfigurationDUnitTest.newMember);
+      localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
+      localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
+
+      getSystem(localProps);
+      Cache cache = getCache();
+
+      assertNotNull(cache);
+
+      Region<?, ?> region1 = cache.getRegion(REPLICATE_REGION);
+      assertNotNull(region1);
+
+      // MockRegionExtension verification
+      @SuppressWarnings("unchecked")
+      // should only be one region extension
+      final MockRegionExtension mockRegionExtension =
+          (MockRegionExtension) ((Extensible<Region<?, ?>>) region1).getExtensionPoint()
+              .getExtensions().iterator().next();
+      assertNotNull(mockRegionExtension);
+      assertEquals(1, mockRegionExtension.beforeCreateCounter.get());
+      assertEquals(1, mockRegionExtension.onCreateCounter.get());
+      assertEquals("value2", mockRegionExtension.getValue());
+
+      // MockCacheExtension verification
+      @SuppressWarnings("unchecked")
+      // should only be one cache extension
+      final MockCacheExtension mockCacheExtension = (MockCacheExtension) ((Extensible<Cache>) cache)
+          .getExtensionPoint().getExtensions().iterator().next();
+      assertNotNull(mockCacheExtension);
+      assertEquals(1, mockCacheExtension.beforeCreateCounter.get());
+      assertEquals(1, mockCacheExtension.onCreateCounter.get());
+      assertEquals("value2", mockCacheExtension.getValue());
+
+      return getAllNormalMembers(cache);
+    });
+  }
+
+  /**
+   * Tests for {@link Extension}, {@link Extensible}, {@link XmlParser}, {@link XmlGenerator},
+   * {@link XmlEntity} as it applies to Extensions. Asserts that Mock Extension is created and
+   * destroyed on region and cache.
+   * 
+   * @since GemFire 8.1
+   */
+  @Category(FlakyTest.class) // GEODE-1333
+  @Test
+  public void testDestroyExtensions() throws Exception {
+    Object[] result = setup();
+    final int locatorPort = (Integer) result[0];
+
+    createRegion(REPLICATE_REGION, RegionShortcut.REPLICATE, null);
+    createMockRegionExtension(REPLICATE_REGION, "value1");
+    destroyMockRegionExtension(REPLICATE_REGION);
+    createMockCacheExtension("value1");
+    destroyMockCacheExtension();
+
+    // Start a new member which receives the shared configuration
+    // Verify the config creation on this member
+
+    final String newMemberWorkingDir =
+        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + newMember;
+
+    VM newMember = getHost(0).getVM(2);
+    newMember.invoke(() -> {
+      Properties localProps = new Properties();
+
+      File workingDir = new File(newMemberWorkingDir);
+      workingDir.mkdirs();
+
+      localProps.setProperty(MCAST_PORT, "0");
+      localProps.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
+      localProps.setProperty(NAME, ClusterConfigurationDUnitTest.newMember);
+      localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
+      localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
+
+      getSystem(localProps);
+      Cache cache = getCache();
+
+      assertNotNull(cache);
+
+      Region<?, ?> region1 = cache.getRegion(REPLICATE_REGION);
+      assertNotNull(region1);
+
+      // MockRegionExtension verification
+      @SuppressWarnings("unchecked")
+      final Extensible<Region<?, ?>> extensibleRegion = (Extensible<Region<?, ?>>) region1;
+      // Should not be any region extensions
+      assertTrue(!extensibleRegion.getExtensionPoint().getExtensions().iterator().hasNext());
+
+      // MockCacheExtension verification
+      @SuppressWarnings("unchecked")
+      final Extensible<Cache> extensibleCache = (Extensible<Cache>) cache;
+      // Should not be any cache extensions
+      assertTrue(!extensibleCache.getExtensionPoint().getExtensions().iterator().hasNext());
+
+      return getAllNormalMembers(cache);
+    });
+  }
+
+  @Test
+  public void testCreateGatewaySenderReceiver() throws Exception {
+    addIgnoredException("could not get remote locator");
+
+    final String gsId = "GatewaySender1";
+    final String batchSize = "1000";
+    final String dispatcherThreads = "5";
+    final String enableConflation = "false";
+    final String manualStart = "false";
+    final String alertThreshold = "1000";
+    final String batchTimeInterval = "20";
+    final String maxQueueMemory = "100";
+    final String orderPolicy = GatewaySender.OrderPolicy.KEY.toString();
+    final String parallel = "true";
+    final String rmDsId = "250";
+    final String socketBufferSize =
+        String.valueOf(GatewaySender.MINIMUM_SOCKET_READ_TIMEOUT + 1000);
+    final String socketReadTimeout =
+        String.valueOf(GatewaySender.MINIMUM_SOCKET_READ_TIMEOUT + 200);
+
+    Object[] result = setup();
+    final int locatorPort = (Integer) result[0];
+
+    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CREATE_GATEWAYRECEIVER);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYRECEIVER__MANUALSTART, "true");
+    csb.addOption(CliStrings.CREATE_GATEWAYRECEIVER__STARTPORT, "10000");
+    csb.addOption(CliStrings.CREATE_GATEWAYRECEIVER__ENDPORT, "20000");
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYRECEIVER__MAXTIMEBETWEENPINGS, "20");
+    executeAndVerifyCommand(csb.getCommandString());
+
+    csb = new CommandStringBuilder(CliStrings.CREATE_GATEWAYSENDER);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ID, gsId);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__BATCHSIZE, batchSize);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ALERTTHRESHOLD, alertThreshold);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__BATCHTIMEINTERVAL,
+        batchTimeInterval);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__DISPATCHERTHREADS,
+        dispatcherThreads);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ENABLEBATCHCONFLATION,
+        enableConflation);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__MANUALSTART, manualStart);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__MAXQUEUEMEMORY, maxQueueMemory);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ORDERPOLICY, orderPolicy);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__PARALLEL, parallel);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__REMOTEDISTRIBUTEDSYSTEMID, rmDsId);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__SOCKETBUFFERSIZE,
+        socketBufferSize);
+    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__SOCKETREADTIMEOUT,
+        socketReadTimeout);
+
+    executeAndVerifyCommand(csb.getCommandString());
+
+    // Start a new member which receives the shared configuration
+    // Verify the config creation on this member
+    VM newMember = getHost(0).getVM(2);
+    final String newMemberWorkingDir =
+        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + newMember;
+
+    newMember.invoke(() -> {
+      Properties localProps = new Properties();
+
+      File workingDir = new File(newMemberWorkingDir);
+      workingDir.mkdirs();
+
+      localProps.setProperty(MCAST_PORT, "0");
+      localProps.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
+      localProps.setProperty(NAME, ClusterConfigurationDUnitTest.newMember);
+      localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
+      localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
+
+      getSystem(localProps);
+      Cache cache = getCache();
+      assertNotNull(cache);
+
+      // GatewayReceiver verification
+      Set<GatewayReceiver> gatewayReceivers = cache.getGatewayReceivers();
+      assertFalse(gatewayReceivers.isEmpty());
+      assertTrue(gatewayReceivers.size() == 1);
+
+      // Gateway Sender verification
+      GatewaySender gs = cache.getGatewaySender(gsId);
+      assertNotNull(gs);
+      assertTrue(alertThreshold.equals(Integer.toString(gs.getAlertThreshold())));
+      assertTrue(batchSize.equals(Integer.toString(gs.getBatchSize())));
+      assertTrue(dispatcherThreads.equals(Integer.toString(gs.getDispatcherThreads())));
+      assertTrue(enableConflation.equals(Boolean.toString(gs.isBatchConflationEnabled())));
+      assertTrue(manualStart.equals(Boolean.toString(gs.isManualStart())));
+      assertTrue(alertThreshold.equals(Integer.toString(gs.getAlertThreshold())));
+      assertTrue(batchTimeInterval.equals(Integer.toString(gs.getBatchTimeInterval())));
+      assertTrue(maxQueueMemory.equals(Integer.toString(gs.getMaximumQueueMemory())));
+      assertTrue(orderPolicy.equals(gs.getOrderPolicy().toString()));
+      assertTrue(parallel.equals(Boolean.toString(gs.isParallel())));
+      assertTrue(rmDsId.equals(Integer.toString(gs.getRemoteDSId())));
+      assertTrue(socketBufferSize.equals(Integer.toString(gs.getSocketBufferSize())));
+      assertTrue(socketReadTimeout.equals(Integer.toString(gs.getSocketReadTimeout())));
+    });
+  }
+
+  private Object[] setup() throws IOException {
+    final int locator1Port = getRandomAvailableTCPPort();
+    final String locator1Name = "locator1-" + locator1Port;
+    final String locatorLogPath = this.temporaryFolder.getRoot().getCanonicalPath() + File.separator
+        + "locator-" + locator1Port + ".log";
+
+    VM locatorAndMgr = getHost(0).getVM(3);
+    Object[] result = (Object[]) locatorAndMgr.invoke(() -> {
+      int httpPort;
+      int jmxPort;
+      String jmxHost;
+
+      try {
+        jmxHost = InetAddress.getLocalHost().getHostName();
+      } catch (UnknownHostException ignore) {
+        jmxHost = "localhost";
+      }
+
+      final int[] ports = getRandomAvailableTCPPorts(2);
+
+      jmxPort = ports[0];
+      httpPort = ports[1];
+
+      final File locatorLogFile = new File(locatorLogPath);
+
+      final Properties locatorProps = new Properties();
+      locatorProps.setProperty(NAME, locator1Name);
+      locatorProps.setProperty(MCAST_PORT, "0");
+      locatorProps.setProperty(LOG_LEVEL, "config");
+      locatorProps.setProperty(ENABLE_CLUSTER_CONFIGURATION, "true");
+      locatorProps.setProperty(JMX_MANAGER, "true");
+      locatorProps.setProperty(JMX_MANAGER_START, "true");
+      locatorProps.setProperty(JMX_MANAGER_BIND_ADDRESS, String.valueOf(jmxHost));
+      locatorProps.setProperty(JMX_MANAGER_PORT, String.valueOf(jmxPort));
+      locatorProps.setProperty(HTTP_SERVICE_PORT, String.valueOf(httpPort));
+
+      final InternalLocator locator = (InternalLocator) Locator.startLocatorAndDS(locator1Port,
+          locatorLogFile, null, locatorProps);
+
+      WaitCriterion wc = new WaitCriterion() {
+        @Override
+        public boolean done() {
+          return locator.isSharedConfigurationRunning();
+        }
+
+        @Override
+        public String description() {
+          return "Waiting for shared configuration to be started";
+        }
+      };
+      waitForCriterion(wc, TIMEOUT, INTERVAL, true);
+
+      final Object[] results = new Object[4];
+      results[0] = locator1Port;
+      results[1] = jmxHost;
+      results[2] = jmxPort;
+      results[3] = httpPort;
+      return results;
+    });
+
+    HeadlessGfsh gfsh = getDefaultShell();
+    String jmxHost = (String) result[1];
+    int jmxPort = (Integer) result[2];
+    int httpPort = (Integer) result[3];
+
+    connect(jmxHost, jmxPort, httpPort, gfsh);
+
+    final String dataMemberWorkingDir =
+        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + dataMember;
+
+    // Create a cache in VM 1
+    VM dataMember = getHost(0).getVM(1);
+    dataMember.invoke(() -> {
+      Properties localProps = new Properties();
+      File workingDir = new File(dataMemberWorkingDir);
+      workingDir.mkdirs();
+
+      localProps.setProperty(MCAST_PORT, "0");
+      localProps.setProperty(LOCATORS, "localhost[" + locator1Port + "]");
+      localProps.setProperty(NAME, ClusterConfigurationDUnitTest.dataMember);
+      localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
+      localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
+
+      getSystem(localProps);
+      Cache cache = getCache();
+      assertNotNull(cache);
+      return getAllNormalMembers(cache);
+    });
+
+    return result;
+  }
+
+  private void createRegion(String regionName, RegionShortcut regionShortCut, String group) {
+    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CREATE_REGION);
+    csb.addOption(CliStrings.CREATE_REGION__REGION, regionName);
+    csb.addOption(CliStrings.CREATE_REGION__REGIONSHORTCUT, regionShortCut.name());
+    csb.addOptionWithValueCheck(CliStrings.CREATE_REGION__GROUP, group);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void createMockRegionExtension(final String regionName, final String value) {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.CREATE_MOCK_REGION_EXTENSION);
+    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
+    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void alterMockRegionExtension(final String regionName, final String value) {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.ALTER_MOCK_REGION_EXTENSION);
+    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
+    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void destroyMockRegionExtension(final String regionName) {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.DESTROY_MOCK_REGION_EXTENSION);
+    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void createMockCacheExtension(final String value) {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.CREATE_MOCK_CACHE_EXTENSION);
+    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void alterMockCacheExtension(final String value) {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.ALTER_MOCK_CACHE_EXTENSION);
+    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private void destroyMockCacheExtension() {
+    CommandStringBuilder csb =
+        new CommandStringBuilder(MockExtensionCommands.DESTROY_MOCK_CACHE_EXTENSION);
+    executeAndVerifyCommand(csb.toString());
+  }
+
+  private CommandResult executeAndVerifyCommand(String commandString) {
+    CommandResult cmdResult = executeCommand(commandString);
+    org.apache.geode.test.dunit.LogWriterUtils.getLogWriter().info("Command : " + commandString);
+    org.apache.geode.test.dunit.LogWriterUtils.getLogWriter()
+        .info("Command Result : " + commandResultToString(cmdResult));
+    assertEquals(Status.OK, cmdResult.getStatus());
+    assertFalse(cmdResult.failedToPersist());
+    return cmdResult;
+  }
+
+  private void shutdownAll() throws IOException {
+    VM locatorAndMgr = getHost(0).getVM(3);
+    locatorAndMgr.invoke(() -> {
+      GemFireCacheImpl cache = (GemFireCacheImpl) CacheFactory.getAnyInstance();
+      ShutdownAllRequest.send(cache.getDistributedSystem().getDistributionManager(), -1);
+      return null;
+    });
+
+    locatorAndMgr.invoke(SharedConfigurationTestUtils.cleanupLocator);
+    // Clean up the directories
+    if (serverNames != null && !serverNames.isEmpty()) {
+      for (String serverName : serverNames) {
+        final File serverDir = new File(serverName);
+        cleanDirectory(serverDir);
+        deleteDirectory(serverDir);
+      }
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/geode/blob/6f9753fb/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationExtensionsDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationExtensionsDUnitTest.java b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationExtensionsDUnitTest.java
deleted file mode 100644
index f9786c7..0000000
--- a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationExtensionsDUnitTest.java
+++ /dev/null
@@ -1,429 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.management.internal.configuration;
-
-import static org.apache.commons.io.FileUtils.cleanDirectory;
-import static org.apache.commons.io.FileUtils.deleteDirectory;
-import static org.apache.geode.distributed.ConfigurationProperties.DEPLOY_WORKING_DIR;
-import static org.apache.geode.distributed.ConfigurationProperties.ENABLE_CLUSTER_CONFIGURATION;
-import static org.apache.geode.distributed.ConfigurationProperties.HTTP_SERVICE_PORT;
-import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER;
-import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_BIND_ADDRESS;
-import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_PORT;
-import static org.apache.geode.distributed.ConfigurationProperties.JMX_MANAGER_START;
-import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
-import static org.apache.geode.distributed.ConfigurationProperties.LOG_LEVEL;
-import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
-import static org.apache.geode.distributed.ConfigurationProperties.NAME;
-import static org.apache.geode.distributed.ConfigurationProperties.USE_CLUSTER_CONFIGURATION;
-import static org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPorts;
-import static org.apache.geode.management.internal.cli.CliUtil.getAllNormalMembers;
-import static org.apache.geode.test.dunit.Assert.assertEquals;
-import static org.apache.geode.test.dunit.Assert.assertFalse;
-import static org.apache.geode.test.dunit.Assert.assertNotNull;
-import static org.apache.geode.test.dunit.Assert.assertTrue;
-import static org.apache.geode.test.dunit.Host.getHost;
-import static org.apache.geode.test.dunit.Wait.waitForCriterion;
-
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.Region;
-import org.apache.geode.cache.RegionShortcut;
-import org.apache.geode.distributed.Locator;
-import org.apache.geode.distributed.internal.InternalLocator;
-import org.apache.geode.internal.admin.remote.ShutdownAllRequest;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
-import org.apache.geode.internal.cache.extension.Extensible;
-import org.apache.geode.internal.cache.extension.Extension;
-import org.apache.geode.internal.cache.extension.mock.MockCacheExtension;
-import org.apache.geode.internal.cache.extension.mock.MockExtensionCommands;
-import org.apache.geode.internal.cache.extension.mock.MockRegionExtension;
-import org.apache.geode.internal.cache.xmlcache.XmlGenerator;
-import org.apache.geode.internal.cache.xmlcache.XmlParser;
-import org.apache.geode.management.cli.Result.Status;
-import org.apache.geode.management.internal.cli.HeadlessGfsh;
-import org.apache.geode.management.internal.cli.commands.CliCommandTestBase;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-import org.apache.geode.test.dunit.SerializableCallable;
-import org.apache.geode.test.dunit.VM;
-import org.apache.geode.test.dunit.WaitCriterion;
-import org.apache.geode.test.junit.categories.DistributedTest;
-import org.apache.geode.test.junit.categories.FlakyTest;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.HashSet;
-import java.util.Properties;
-import java.util.Set;
-
-@Category(DistributedTest.class)
-public class ClusterConfigurationExtensionsDUnitTest extends CliCommandTestBase {
-
-  private static final int TIMEOUT = 10000;
-  private static final int INTERVAL = 500;
-
-  private static final String REPLICATE_REGION = "ReplicateRegion1";
-
-  private static final String dataMember = "DataMember";
-  private static final String newMember = "NewMember";
-
-  private static Set<String> serverNames = new HashSet<>();
-  private static Set<String> jarFileNames = new HashSet<>();
-
-  @Override
-  public final void postSetUpCliCommandTestBase() throws Exception {
-    disconnectAllFromDS();
-  }
-
-  @Override
-  public final void preTearDownCliCommandTestBase() throws Exception {
-    shutdownAll();
-
-    serverNames.clear();
-    jarFileNames.clear();
-  }
-
-  /**
-   * Tests for {@link Extension}, {@link Extensible}, {@link XmlParser}, {@link XmlGenerator},
-   * {@link XmlEntity} as it applies to Extensions. Asserts that Mock Extension is created and
-   * altered on region and cache.
-   * 
-   * @since GemFire 8.1
-   */
-  @Category(FlakyTest.class) // GEODE-1334
-  @Test
-  public void testCreateExtensions() throws Exception {
-    Object[] result = setup();
-    final int locatorPort = (Integer) result[0];
-
-    createRegion(REPLICATE_REGION, RegionShortcut.REPLICATE, null);
-    createMockRegionExtension(REPLICATE_REGION, "value1");
-    alterMockRegionExtension(REPLICATE_REGION, "value2");
-    createMockCacheExtension("value1");
-    alterMockCacheExtension("value2");
-
-    // Start a new member which receives the shared configuration
-    // Verify the config creation on this member
-
-    final String newMemberWorkDir =
-        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + newMember;
-
-    VM newMember = getHost(0).getVM(2);
-    newMember.invoke(new SerializableCallable() {
-      private static final long serialVersionUID = 1L;
-
-      @Override
-      public Object call() throws IOException {
-        Properties localProps = new Properties();
-
-        File workingDir = new File(newMemberWorkDir);
-        workingDir.mkdirs();
-
-        localProps.setProperty(MCAST_PORT, "0");
-        localProps.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
-        localProps.setProperty(NAME, ClusterConfigurationExtensionsDUnitTest.newMember);
-        localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
-        localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
-
-        getSystem(localProps);
-        Cache cache = getCache();
-
-        assertNotNull(cache);
-
-        Region<?, ?> region1 = cache.getRegion(REPLICATE_REGION);
-        assertNotNull(region1);
-
-        // MockRegionExtension verification
-        @SuppressWarnings("unchecked")
-        // should only be one region extension
-        final MockRegionExtension mockRegionExtension =
-            (MockRegionExtension) ((Extensible<Region<?, ?>>) region1).getExtensionPoint()
-                .getExtensions().iterator().next();
-        assertNotNull(mockRegionExtension);
-        assertEquals(1, mockRegionExtension.beforeCreateCounter.get());
-        assertEquals(1, mockRegionExtension.onCreateCounter.get());
-        assertEquals("value2", mockRegionExtension.getValue());
-
-        // MockCacheExtension verification
-        @SuppressWarnings("unchecked")
-        // should only be one cache extension
-        final MockCacheExtension mockCacheExtension =
-            (MockCacheExtension) ((Extensible<Cache>) cache).getExtensionPoint().getExtensions()
-                .iterator().next();
-        assertNotNull(mockCacheExtension);
-        assertEquals(1, mockCacheExtension.beforeCreateCounter.get());
-        assertEquals(1, mockCacheExtension.onCreateCounter.get());
-        assertEquals("value2", mockCacheExtension.getValue());
-
-        return getAllNormalMembers(cache);
-      }
-    });
-  }
-
-  /**
-   * Tests for {@link Extension}, {@link Extensible}, {@link XmlParser}, {@link XmlGenerator},
-   * {@link XmlEntity} as it applies to Extensions. Asserts that Mock Extension is created and
-   * destroyed on region and cache.
-   * 
-   * @since GemFire 8.1
-   */
-  @Category(FlakyTest.class) // GEODE-1333
-  @Test
-  public void testDestroyExtensions() throws Exception {
-    Object[] result = setup();
-    final int locatorPort = (Integer) result[0];
-
-    createRegion(REPLICATE_REGION, RegionShortcut.REPLICATE, null);
-    createMockRegionExtension(REPLICATE_REGION, "value1");
-    destroyMockRegionExtension(REPLICATE_REGION);
-    createMockCacheExtension("value1");
-    destroyMockCacheExtension();
-
-    // Start a new member which receives the shared configuration
-    // Verify the config creation on this member
-
-    final String newMemberWorkingDir =
-        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + newMember;
-
-    VM newMember = getHost(0).getVM(2);
-    newMember.invoke(new SerializableCallable() {
-
-      @Override
-      public Object call() throws IOException {
-        Properties localProps = new Properties();
-
-        File workingDir = new File(newMemberWorkingDir);
-        workingDir.mkdirs();
-
-        localProps.setProperty(MCAST_PORT, "0");
-        localProps.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
-        localProps.setProperty(NAME, ClusterConfigurationExtensionsDUnitTest.newMember);
-        localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
-        localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
-
-        getSystem(localProps);
-        Cache cache = getCache();
-
-        assertNotNull(cache);
-
-        Region<?, ?> region1 = cache.getRegion(REPLICATE_REGION);
-        assertNotNull(region1);
-
-        // MockRegionExtension verification
-        @SuppressWarnings("unchecked")
-        final Extensible<Region<?, ?>> extensibleRegion = (Extensible<Region<?, ?>>) region1;
-        // Should not be any region extensions
-        assertTrue(!extensibleRegion.getExtensionPoint().getExtensions().iterator().hasNext());
-
-        // MockCacheExtension verification
-        @SuppressWarnings("unchecked")
-        final Extensible<Cache> extensibleCache = (Extensible<Cache>) cache;
-        // Should not be any cache extensions
-        assertTrue(!extensibleCache.getExtensionPoint().getExtensions().iterator().hasNext());
-
-        return getAllNormalMembers(cache);
-      }
-    });
-  }
-
-  private Object[] setup() throws IOException {
-    final int[] ports = getRandomAvailableTCPPorts(3);
-    final int locator1Port = ports[0];
-    final String locator1Name = "locator1-" + locator1Port;
-    final String locatorLogPath = this.temporaryFolder.getRoot().getCanonicalPath() + File.separator
-        + "locator-" + locator1Port + ".log";
-
-    VM locatorAndMgr = getHost(0).getVM(3);
-    Object[] result = (Object[]) locatorAndMgr.invoke(new SerializableCallable() {
-      @Override
-      public Object call() throws IOException {
-        int httpPort;
-        int jmxPort;
-        String jmxHost;
-
-        try {
-          jmxHost = InetAddress.getLocalHost().getHostName();
-        } catch (UnknownHostException ignore) {
-          jmxHost = "localhost";
-        }
-
-        final int[] ports = getRandomAvailableTCPPorts(2);
-
-        jmxPort = ports[0];
-        httpPort = ports[1];
-
-        final File locatorLogFile = new File(locatorLogPath);
-
-        final Properties locatorProps = new Properties();
-        locatorProps.setProperty(NAME, locator1Name);
-        locatorProps.setProperty(MCAST_PORT, "0");
-        locatorProps.setProperty(LOG_LEVEL, "config");
-        locatorProps.setProperty(ENABLE_CLUSTER_CONFIGURATION, "true");
-        locatorProps.setProperty(JMX_MANAGER, "true");
-        locatorProps.setProperty(JMX_MANAGER_START, "true");
-        locatorProps.setProperty(JMX_MANAGER_BIND_ADDRESS, String.valueOf(jmxHost));
-        locatorProps.setProperty(JMX_MANAGER_PORT, String.valueOf(jmxPort));
-        locatorProps.setProperty(HTTP_SERVICE_PORT, String.valueOf(httpPort));
-
-        final InternalLocator locator = (InternalLocator) Locator.startLocatorAndDS(locator1Port,
-            locatorLogFile, null, locatorProps);
-
-        WaitCriterion wc = new WaitCriterion() {
-          @Override
-          public boolean done() {
-            return locator.isSharedConfigurationRunning();
-          }
-
-          @Override
-          public String description() {
-            return "Waiting for shared configuration to be started";
-          }
-        };
-        waitForCriterion(wc, TIMEOUT, INTERVAL, true);
-
-        final Object[] result = new Object[4];
-        result[0] = locator1Port;
-        result[1] = jmxHost;
-        result[2] = jmxPort;
-        result[3] = httpPort;
-        return result;
-      }
-    });
-
-    HeadlessGfsh gfsh = getDefaultShell();
-    String jmxHost = (String) result[1];
-    int jmxPort = (Integer) result[2];
-    int httpPort = (Integer) result[3];
-
-    connect(jmxHost, jmxPort, httpPort, gfsh);
-
-    final String dataMemberWorkingDir =
-        this.temporaryFolder.getRoot().getCanonicalPath() + File.separator + dataMember;
-
-    // Create a cache in VM 1
-    VM dataMember = getHost(0).getVM(1);
-    dataMember.invoke(new SerializableCallable() {
-      @Override
-      public Object call() throws IOException {
-        Properties localProps = new Properties();
-        File workingDir = new File(dataMemberWorkingDir);
-        workingDir.mkdirs();
-
-        localProps.setProperty(MCAST_PORT, "0");
-        localProps.setProperty(LOCATORS, "localhost[" + locator1Port + "]");
-        localProps.setProperty(NAME, ClusterConfigurationExtensionsDUnitTest.dataMember);
-        localProps.setProperty(USE_CLUSTER_CONFIGURATION, "true");
-        localProps.setProperty(DEPLOY_WORKING_DIR, workingDir.getCanonicalPath());
-
-        getSystem(localProps);
-        Cache cache = getCache();
-        assertNotNull(cache);
-        return getAllNormalMembers(cache);
-      }
-    });
-
-    return result;
-  }
-
-  private void createRegion(String regionName, RegionShortcut regionShortCut, String group) {
-    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CREATE_REGION);
-    csb.addOption(CliStrings.CREATE_REGION__REGION, regionName);
-    csb.addOption(CliStrings.CREATE_REGION__REGIONSHORTCUT, regionShortCut.name());
-    csb.addOptionWithValueCheck(CliStrings.CREATE_REGION__GROUP, group);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void createMockRegionExtension(final String regionName, final String value) {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.CREATE_MOCK_REGION_EXTENSION);
-    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
-    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void alterMockRegionExtension(final String regionName, final String value) {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.ALTER_MOCK_REGION_EXTENSION);
-    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
-    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void destroyMockRegionExtension(final String regionName) {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.DESTROY_MOCK_REGION_EXTENSION);
-    csb.addOption(MockExtensionCommands.OPTION_REGION_NAME, regionName);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void createMockCacheExtension(final String value) {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.CREATE_MOCK_CACHE_EXTENSION);
-    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void alterMockCacheExtension(final String value) {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.ALTER_MOCK_CACHE_EXTENSION);
-    csb.addOption(MockExtensionCommands.OPTION_VALUE, value);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private void destroyMockCacheExtension() {
-    CommandStringBuilder csb =
-        new CommandStringBuilder(MockExtensionCommands.DESTROY_MOCK_CACHE_EXTENSION);
-    executeAndVerifyCommand(csb.toString());
-  }
-
-  private CommandResult executeAndVerifyCommand(String commandString) {
-    CommandResult cmdResult = executeCommand(commandString);
-    org.apache.geode.test.dunit.LogWriterUtils.getLogWriter().info("Command : " + commandString);
-    org.apache.geode.test.dunit.LogWriterUtils.getLogWriter()
-        .info("Command Result : " + commandResultToString(cmdResult));
-    assertEquals(Status.OK, cmdResult.getStatus());
-    assertFalse(cmdResult.failedToPersist());
-    return cmdResult;
-  }
-
-  private void shutdownAll() throws IOException {
-    VM locatorAndMgr = getHost(0).getVM(3);
-    locatorAndMgr.invoke(new SerializableCallable() {
-      @Override
-      public Object call() throws Exception {
-        GemFireCacheImpl cache = (GemFireCacheImpl) CacheFactory.getAnyInstance();
-        ShutdownAllRequest.send(cache.getDistributedSystem().getDistributionManager(), -1);
-        return null;
-      }
-    });
-
-    locatorAndMgr.invoke(SharedConfigurationTestUtils.cleanupLocator);
-    // Clean up the directories
-    if (serverNames != null && !serverNames.isEmpty()) {
-      for (String serverName : serverNames) {
-        final File serverDir = new File(serverName);
-        cleanDirectory(serverDir);
-        deleteDirectory(serverDir);
-      }
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/geode/blob/6f9753fb/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/WanDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/WanDUnitTest.java b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/WanDUnitTest.java
deleted file mode 100644
index c1aeae6..0000000
--- a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/WanDUnitTest.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.management.internal.configuration;
-
-import static org.apache.geode.test.dunit.Assert.assertFalse;
-import static org.apache.geode.test.dunit.Assert.assertNotNull;
-import static org.apache.geode.test.dunit.Assert.assertTrue;
-import static org.apache.geode.test.dunit.IgnoredException.addIgnoredException;
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertEquals;
-
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.wan.GatewayReceiver;
-import org.apache.geode.cache.wan.GatewaySender;
-import org.apache.geode.cache.wan.GatewaySender.OrderPolicy;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
-import org.apache.geode.test.dunit.internal.JUnit4DistributedTestCase;
-import org.apache.geode.test.dunit.rules.GfshShellConnectionRule;
-import org.apache.geode.test.dunit.rules.LocatorServerStartupRule;
-import org.apache.geode.test.dunit.rules.Server;
-import org.apache.geode.test.junit.categories.DistributedTest;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-
-import java.util.Properties;
-import java.util.Set;
-
-@Category(DistributedTest.class)
-public class WanDUnitTest extends JUnit4DistributedTestCase {
-  private org.apache.geode.test.dunit.rules.Locator locator;
-  private GfshShellConnectionRule gfshConnector;
-
-  @Before
-  public void before() throws Exception {
-    locator = lsRule.startLocatorVM(0);
-
-    gfshConnector = new GfshShellConnectionRule(locator);
-    gfshConnector.connect();
-    assertThat(gfshConnector.isConnected()).isTrue();
-
-    // start a server so that we can execute data commands that requires at least a server running
-    lsRule.startServerVM(1, locator.getPort());
-  }
-
-  @Rule
-  public LocatorServerStartupRule lsRule = new LocatorServerStartupRule();
-
-  @Test
-  public void testCreateGatewaySenderReceiver() throws Exception {
-    addIgnoredException("could not get remote locator");
-
-    final String gsId = "GatewaySender1";
-    final String batchSize = "1000";
-    final String dispatcherThreads = "5";
-    final String enableConflation = "false";
-    final String manualStart = "false";
-    final String alertThreshold = "1000";
-    final String batchTimeInterval = "20";
-    final String maxQueueMemory = "100";
-    final String orderPolicy = OrderPolicy.KEY.toString();
-    final String parallel = "true";
-    final String rmDsId = "250";
-    final String socketBufferSize =
-        String.valueOf(GatewaySender.MINIMUM_SOCKET_READ_TIMEOUT + 1000);
-    final String socketReadTimeout =
-        String.valueOf(GatewaySender.MINIMUM_SOCKET_READ_TIMEOUT + 200);
-
-    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CREATE_GATEWAYRECEIVER);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYRECEIVER__MANUALSTART, "true");
-    csb.addOption(CliStrings.CREATE_GATEWAYRECEIVER__STARTPORT, "10000");
-    csb.addOption(CliStrings.CREATE_GATEWAYRECEIVER__ENDPORT, "20000");
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYRECEIVER__MAXTIMEBETWEENPINGS, "20");
-    gfshConnector.executeAndVerifyCommand(csb.getCommandString());
-
-    csb = new CommandStringBuilder(CliStrings.CREATE_GATEWAYSENDER);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ID, gsId);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__BATCHSIZE, batchSize);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ALERTTHRESHOLD, alertThreshold);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__BATCHTIMEINTERVAL,
-        batchTimeInterval);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__DISPATCHERTHREADS,
-        dispatcherThreads);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ENABLEBATCHCONFLATION,
-        enableConflation);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__MANUALSTART, manualStart);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__MAXQUEUEMEMORY, maxQueueMemory);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__ORDERPOLICY, orderPolicy);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__PARALLEL, parallel);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__REMOTEDISTRIBUTEDSYSTEMID, rmDsId);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__SOCKETBUFFERSIZE,
-        socketBufferSize);
-    csb.addOptionWithValueCheck(CliStrings.CREATE_GATEWAYSENDER__SOCKETREADTIMEOUT,
-        socketReadTimeout);
-
-    gfshConnector.executeAndVerifyCommand(csb.getCommandString());
-
-    // Start a new member which receives the shared configuration
-    // Verify the config creation on this member
-    Server server = lsRule.startServerVM(2, new Properties(), locator.getPort());
-
-    server.invoke(() -> {
-      Cache cache = LocatorServerStartupRule.serverStarter.cache;
-      assertNotNull(cache);
-
-      // GatewayReceiver verification
-      Set<GatewayReceiver> gatewayReceivers = cache.getGatewayReceivers();
-      assertFalse(gatewayReceivers.isEmpty());
-      assertTrue(gatewayReceivers.size() == 1);
-
-      // Gateway Sender verification
-      GatewaySender gs = cache.getGatewaySender(gsId);
-      assertNotNull(gs);
-      assertTrue(alertThreshold.equals(Integer.toString(gs.getAlertThreshold())));
-      assertTrue(batchSize.equals(Integer.toString(gs.getBatchSize())));
-      assertTrue(dispatcherThreads.equals(Integer.toString(gs.getDispatcherThreads())));
-      assertTrue(enableConflation.equals(Boolean.toString(gs.isBatchConflationEnabled())));
-      assertTrue(manualStart.equals(Boolean.toString(gs.isManualStart())));
-      assertTrue(alertThreshold.equals(Integer.toString(gs.getAlertThreshold())));
-      assertTrue(batchTimeInterval.equals(Integer.toString(gs.getBatchTimeInterval())));
-      assertTrue(maxQueueMemory.equals(Integer.toString(gs.getMaximumQueueMemory())));
-      assertTrue(orderPolicy.equals(gs.getOrderPolicy().toString()));
-      assertTrue(parallel.equals(Boolean.toString(gs.isParallel())));
-      assertTrue(rmDsId.equals(Integer.toString(gs.getRemoteDSId())));
-      assertTrue(socketBufferSize.equals(Integer.toString(gs.getSocketBufferSize())));
-      assertTrue(socketReadTimeout.equals(Integer.toString(gs.getSocketReadTimeout())));
-    });
-  }
-
-  @Test
-  public void testConfigurePDX() throws Exception {
-    CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CONFIGURE_PDX);
-    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__AUTO__SERIALIZER__CLASSES, "com.foo.*");
-    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__IGNORE__UNREAD_FIELDS, "true");
-    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__PERSISTENT, "true");
-    csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__READ__SERIALIZED, "true");
-
-    CommandResult result = gfshConnector.executeAndVerifyCommand(csb.getCommandString());
-    String message = (String) result.getResultData().getGfJsonObject().getJSONObject("content")
-        .getJSONArray("message").get(0);
-    assertEquals(CliStrings.CONFIGURE_PDX__NORMAL__MEMBERS__WARNING, message);
-  }
-
-}


Mime
View raw message