You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by jb...@apache.org on 2018/08/10 22:49:27 UTC

[geode] branch develop updated: GEODE-5530: Removes test dependency from other test source sets (#2294)

This is an automated email from the ASF dual-hosted git repository.

jbarrett pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new 65c7984   GEODE-5530: Removes test dependency from other test source sets (#2294)
65c7984 is described below

commit 65c79841b65d7bd9ffa3c50fa73d4d3857dced58
Author: Jacob Barrett <jb...@pivotal.io>
AuthorDate: Fri Aug 10 15:49:22 2018 -0700

     GEODE-5530: Removes test dependency from other test source sets (#2294)
    
    Moves common sources to geode-dunit or geode-junit.
    
    Co-authored-by: Finn Sutherland <fs...@pivotal.io>
---
 extensions/geode-modules-session/build.gradle      |  22 +-
 extensions/geode-modules-tomcat7/build.gradle      |  18 +-
 extensions/geode-modules-tomcat8/build.gradle      |   8 +-
 extensions/geode-modules/build.gradle              |   4 +-
 .../org/apache/geode/modules/session/Callback.java |   0
 .../geode/modules/session/CommandServlet.java      |   0
 .../geode/modules/session/EmbeddedTomcat.java      |   0
 .../apache/geode/modules/session/QueryCommand.java |   0
 geode-assembly/build.gradle                        |  88 ++-
 .../internal/web/RestFunctionExecuteDUnitTest.java |  15 +-
 .../rest/internal/web/RestFunctionTemplate.java    |   0
 .../org/apache/geode/session/tests/Client.java     |   0
 .../web/controllers/AddFreeItemToOrders.java       |   0
 .../rest/internal/web/controllers/Customer.java    |   0
 .../internal/web/controllers/DateTimeUtils.java    |   0
 .../rest/internal/web/controllers/Gender.java      |   0
 .../internal/web/controllers/GetAllEntries.java    |   0
 .../web/controllers/GetDeliveredOrders.java        |   0
 .../rest/internal/web/controllers/GetRegions.java  |   0
 .../internal/web/controllers/GetValueForKey.java   |   0
 .../geode/rest/internal/web/controllers/Item.java  |   0
 .../web/controllers/NoArgumentFunction.java        |   0
 .../geode/rest/internal/web/controllers/Order.java |   0
 .../rest/internal/web/controllers/Person.java      |   0
 .../internal/web/controllers/PutKeyFunction.java   |   0
 .../web/controllers/RedactingPostProcessor.java    |   0
 .../internal/web/controllers/RestTestUtils.java    |   0
 .../geode/test/junit/rules/EmbeddedPulseRule.java  |   0
 .../geode/test/junit/rules/GeodeDevRestClient.java |   0
 .../test/junit/rules/GeodeHttpClientRule.java      |   0
 .../geode/test/junit/rules/HttpResponseAssert.java |   0
 .../resources/expected_jars.txt                    |   0
 .../resources/sampleJson.json                      |   0
 .../tools/pulse/ui/PulseAcceptanceTestBase.java    |   0
 geode-connectors/build.gradle                      |  37 +-
 .../jdbc/ClassWithSupportedPdxFields.java          |   0
 .../org/apache/geode/connectors/jdbc/Employee.java |   0
 .../jdbc/internal/TestConfigService.java           |   0
 .../jdbc/internal/TestableConnectionManager.java   |   0
 .../test/junit/rules/DatabaseConnectionRule.java   |   0
 .../junit/rules/InMemoryDerbyConnectionRule.java   |   0
 .../test/junit/rules/MySqlConnectionRule.java      |   0
 .../test/junit/rules/PostgresConnectionRule.java   |   0
 .../junit/rules/SqlDatabaseConnectionRule.java     |   0
 .../geode/connectors/jdbc/internal}/mysql.yml      |   0
 .../geode/connectors/jdbc/internal}/postgres.yml   |   0
 .../org/apache/geode/connectors/jdbc}/mysql.yml    |   0
 .../org/apache/geode/connectors/jdbc}/postgres.yml |   0
 .../AnalyzeConnectorsSerializablesJUnitTest.java   |   2 +-
 geode-core/build.gradle                            |  45 +-
 .../java/org/apache/geode/TestDataSerializer.java  |   0
 .../query/dunit/OrderByPartitionedDUnitTest.java   |  30 +-
 .../geode/cache30/CacheXMLPartitionResolver.java   |   0
 .../apache/geode/cache30/TestPdxSerializer.java    |   0
 .../geode/cache30/TestTransactionWriter.java       |   0
 .../AnalyzeSerializablesJUnitTest.java             |   8 +-
 .../internal/cache/ARMLockTestHookAdapter.java     |   0
 .../geode/internal/cache/CommitFunction.java       |   0
 .../cache/MonthBasedPartitionResolver.java         |   0
 .../internal/cache/NestedTransactionFunction.java  |   0
 .../geode/internal/cache/OffHeapTestUtil.java      |   0
 .../PartitionedRegionCacheLoaderForRootRegion.java |   0
 .../PartitionedRegionCacheLoaderForSubRegion.java  |   0
 .../cache/PartitionedRegionGetSomeKeys.java        |   0
 .../geode/internal/cache/RollbackFunction.java     |   0
 .../geode/internal/cache/SerializableMonth.java    |   0
 .../org/apache/geode/internal/cache/TestDelta.java |   0
 .../geode/internal/cache/TestNonSizerObject.java   |   0
 .../geode/internal/cache/TestObjectSizerImpl.java  |   0
 .../internal/cache/execute/BooleanFunction.java    |   0
 .../cache/execute/CustomResultCollector.java       |   0
 .../geode/internal/cache/execute/TimeKeeper.java   |   0
 ...dRegionFunctionFunctionInvocationException.java |   0
 .../FireAndForgetFunctionOnAllServers.java         |   0
 .../cache/functions/LocalDataSetFunction.java      |   0
 .../apache/geode/internal/cache/ha/HAHelper.java   |   0
 .../internal/cache/partitioned/fixed/MyDate1.java  |   0
 .../internal/cache/partitioned/fixed/MyDate2.java  |   0
 .../internal/cache/partitioned/fixed/MyDate3.java  |   0
 .../fixed/QuarterPartitionResolver.java            |   0
 .../fixed/SingleHopQuarterPartitionResolver.java   |   0
 .../geode/internal/cache/snapshot/TestObject.java  |   0
 .../cache/tier/sockets/DeltaEOFException.java      |   0
 .../internal/cache/tier/sockets/FaultyDelta.java   |   0
 .../internal/cache/tier/sockets/HaHelper.java      |   0
 .../internal/process/io/IntegerFileReader.java     |   0
 .../apache/geode/management/CompositeStats.java    |   0
 .../geode/management/CompositeTestMBean.java       |   0
 .../geode/management/CompositeTestMXBean.java      |   0
 .../java/org/apache/geode/management/Manager.java  |   0
 .../java/org/apache/geode/management/Member.java   |   0
 ...DeployCommandFunctionRegistrationDUnitTest.java |  10 +-
 .../ManagedConnectionFactoryForTesting.java        |   0
 .../internal/cli/commands/TestCompressor1.java     |   0
 .../cli/commands/TestCustomIdleExpiry.java         |   0
 .../internal/cli/commands/TestCustomTTLExpiry.java |   0
 .../geode/security/NoShowValue1PostProcessor.java  |   0
 .../geode/security/OtherPDXPostProcessor.java      |   0
 .../geode/security/OtherSimplySecurityManager.java |   0
 .../test/dunit/tests/BasicDistributedTest.java     |   0
 .../tests/GetCurrentVmNumDistributedTest.java      |   0
 .../geode/test/dunit/tests/VMDistributedTest.java  |   0
 .../geode/cache/client/internal/cacheserver.cer    | Bin
 .../apache/geode/cache/client/internal/client.cer  | Bin
 .../geode/cache/client/internal/default.keystore   | Bin
 .../geode/cache/client/internal/trusted.keystore   | Bin
 .../geode/cache/query/dunit/IndexCreation.xml      |   0
 .../query/dunit/PersistentPartitionWithIndex.xml   |   0
 .../cache/query/partitioned/PRIndexCreation.xml    |   0
 ...acheXmlParameterizationRegressionTest_cache.xml |   0
 ...rameterizationRegressionTest_gemfire.properties |   0
 .../cache30/ReconnectWithCacheXMLDUnitTest.xml     |   0
 .../apache/geode/cache30/attributesUnordered.xml   |   0
 .../org/apache/geode/cache30/badFloat.xml          |   0
 .../resources/org/apache/geode/cache30/badInt.xml  |   0
 .../apache/geode/cache30/badKeyConstraintClass.xml |   0
 .../org/apache/geode/cache30/badScope.xml          |   0
 .../org/apache/geode/cache30/bug44710.xml          |   0
 .../apache/geode/cache30/callbackNotDeclarable.xml |   0
 .../apache/geode/cache30/callbackWithException.xml |   0
 .../org/apache/geode/cache30/coLocation.xml        |   0
 .../org/apache/geode/cache30/coLocation3.xml       |   0
 .../resources/org/apache/geode/cache30/ewtest.xml  |   0
 .../org/apache/geode/cache30/loaderNotLoader.xml   |   0
 .../org/apache/geode/cache30/malformed.xml         |   0
 .../org/apache/geode/cache30/namedAttributes.xml   |   0
 .../org/apache/geode/cache30/partitionedRegion.xml |   0
 .../apache/geode/cache30/partitionedRegion51.xml   |   0
 .../org/apache/geode/cache30/sameRootRegion.xml    |   0
 .../org/apache/geode/cache30/sameSubregion.xml     |   0
 .../geode/cache30/unknownNamedAttributes.xml       |   0
 .../internal/cache/CacheServerWithZeroPort.xml     |   0
 .../cache/PartitionRegionCacheExample1.xml         |   0
 .../cache/PartitionRegionCacheExample2.xml         |   0
 .../org/apache/geode/internal/jta/cachejta.xml     |   0
 ...eployCommandRedeployDUnitTest_FunctionATemplate |   0
 ...eployCommandRedeployDUnitTest_FunctionBTemplate |   0
 .../internal/configuration/cluster-empty.xml       |   0
 .../internal/configuration/cluster-region.xml      |   0
 .../management/internal/configuration/cluster8.xml |   0
 .../deployment/ExtendsFunctionAdapter.java         |   0
 .../org/apache/geode/pdx/jsonStrings/array.txt     |   0
 .../apache/geode/pdx/jsonStrings/attachment.txt    |   0
 .../apache/geode/pdx/jsonStrings/attachment2.txt   |   0
 .../org/apache/geode/pdx/jsonStrings/book.txt      |   0
 .../org/apache/geode/pdx/jsonStrings/image.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json1.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json10.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json11.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json12.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json13.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json14.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json15.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json16.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json16_2.txt  |   0
 .../org/apache/geode/pdx/jsonStrings/json17.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json18.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json19.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json2.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json20.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json21.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json22.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json23.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json24.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json25.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json26.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json27.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json28.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json29.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json3.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json31.txt    |   0
 .../org/apache/geode/pdx/jsonStrings/json4.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json5.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json6.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json7.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json8.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/json9.txt     |   0
 .../geode/pdx/jsonStrings/jsonListInsideList.txt   |   0
 .../org/apache/geode/pdx/jsonStrings/jsonMongo.txt |   0
 .../geode/pdx/jsonStrings/jsonMongoSingleQuote.tx0 |   0
 .../apache/geode/pdx/jsonStrings/jsonProductdb.txt |   0
 .../apache/geode/pdx/jsonStrings/json_google.txt   |   0
 .../apache/geode/pdx/jsonStrings/jsoncustomer.txt  |   0
 .../geode/pdx/jsonStrings/jsonemptyobject.txo      |   0
 .../geode/pdx/jsonStrings/jsonemptyobject.txt      |   0
 .../apache/geode/pdx/jsonStrings/jsonfacebook.txt  |   0
 .../org/apache/geode/pdx/jsonStrings/jsonfeed.txt  |   0
 .../org/apache/geode/pdx/jsonStrings/jsonfeed2.txt |   0
 .../apache/geode/pdx/jsonStrings/jsonflicker.txt   |   0
 .../apache/geode/pdx/jsonStrings/jsoniphone.txt    |   0
 .../geode/pdx/jsonStrings/jsonsolrwithcomment.tx0  |   0
 .../geode/pdx/jsonStrings/jsonsolrwithcomment.txt  |   0
 .../apache/geode/pdx/jsonStrings/jsontwitter1.txt  |   0
 .../apache/geode/pdx/jsonStrings/jsontwitter2.txt  |   0
 .../apache/geode/pdx/jsonStrings/jsontwitter3.txt  |   0
 .../org/apache/geode/pdx/jsonStrings/jsonutf.tx0   |   0
 .../org/apache/geode/pdx/jsonStrings/jsonyahoo.txt |   0
 .../apache/geode/pdx/jsonStrings/jsonyoutube.txt   |   0
 .../org/apache/geode/pdx/jsonStrings/linkden1.txt  |   0
 .../org/apache/geode/pdx/jsonStrings/odata.txt     |   0
 .../org/apache/geode/pdx/jsonStrings/odata2.txt    |   0
 .../pdx/jsonStrings/unquoteJsonStrings/json1.txt   |   0
 .../org/apache/geode/pdx/jsonStrings/weather.txt   |   0
 .../resources/security.json                        |   0
 .../functional/OrderByPartitionedJUnitTest.java    | 629 +--------------------
 .../internal/deployment/FunctionScannerTest.java   |  13 +-
 .../ConnectionWithOneMinuteTimeoutFactory.java     |   0
 .../DefaultEvictionActionRegressionTest_cache.xml  |   0
 .../org/apache/geode/internal/jta/cachejta.xml     |   0
 .../deployment/ExtendsFunctionAdapter.java         |   0
 .../resources/security.json                        |   0
 .../logging/LoggingPerformanceTestCase.java        |   0
 ....apache.geode.internal.cache.xmlcache.XmlParser |   3 -
 .../org.springframework.shell.core.CommandMarker   |   4 -
 geode-cq/build.gradle                              |   5 +-
 .../geode/security/FilterPostAuthorization.java    |   0
 .../geode/security/FilterPreAuthorization.java     |   0
 .../org/apache/geode/security/ObjectWithAuthz.java |   0
 .../cache/tier/sockets/durablecq-client-cache.xml  |   0
 .../cache/tier/sockets/durablecq-server-cache.xml  |   0
 .../AnalyzeCQSerializablesJUnitTest.java           |   2 +-
 geode-dunit/build.gradle                           |  75 +--
 .../examples/AsyncInvokeCallableExampleTest.java   |   0
 .../examples/AsyncInvokeRunnableExampleTest.java   |   0
 .../CatchingUnexpectedExceptionExampleTest.java    |   0
 .../examples/DistributedTestCaseExampleTest.java   |   0
 .../examples/DistributedTestRuleExampleTest.java   |   0
 .../dunit/examples/FixtureOrderingExampleTest.java |   0
 .../dunit/examples/InvokeRunnableExampleTest.java  |   0
 .../examples/LocatorPortClusterExampleTest.java    |   0
 .../examples/ReplaceTryFinallyExampleTest.java     |   0
 .../dunit/internal/DUnitBlackboardDUnitTest.java   |   0
 .../tests/CacheRuleBuilderDistributedTest.java     |   0
 .../rules/tests/CacheRuleDistributedTest.java      |   0
 ...tartupRuleCanSpecifyOlderVersionsDUnitTest.java |   0
 ...utedRestoreSystemPropertiesDistributedTest.java |   0
 .../tests/DistributedTestRuleDistributedTest.java  |   0
 .../tests/MemberStarterRuleAwaitDUnitTest.java     |   0
 .../MemberStarterRuleAwaitIntegrationTest.java     |   6 +-
 .../tests/MemberStarterRuleIntegrationTest.java    |   0
 .../dunit/rules/tests/MemberStarterRuleTest.java   |   0
 .../tests/SharedCountersRuleDistributedTest.java   |   0
 .../tests/SharedErrorCollectorDistributedTest.java |   0
 .../cache/examples/CacheTestCaseExampleTest.java   |   0
 .../dunit/examples/BeforeClassExampleTest.java     |   0
 .../apache/geode/cache/query/dunit/TestObject.java |   0
 .../OrderByPartitionedJUnitTestBase.java           |   2 +-
 .../functional/OrderByTestImplementation.java      |   0
 .../security/templates/PKCSPrincipalTest.java      |   0
 .../security/templates/UsernamePrincipalTest.java  |   0
 .../DoNotHandleUnexpectedExceptionExampleTest.java |   0
 geode-experimental-driver/build.gradle             |   6 +-
 .../driver/AllTypesJavaSerializer.java             |   0
 .../experimental/driver/IntegrationTestBase.java   |   0
 .../geode/experimental/driver/JavaSerializer.java  |   0
 ...he.geode.protocol.serialization.ValueSerializer |   0
 .../geode/experimental/driver/bogusclient.keystore | Bin
 .../geode/experimental/driver/bogusserver.keystore | Bin
 .../geode/experimental/driver/cacheserver.keystore | Bin
 .../experimental/driver/cacheserver.truststore     | Bin
 .../geode/experimental/driver/client.keystore      | Bin
 .../geode/experimental/driver/client.truststore    | Bin
 geode-json/build.gradle                            |   4 -
 geode-junit/build.gradle                           |   6 +-
 .../apache/geode/test/compiler/AbstractClass.java  |   0
 .../apache/geode/test/compiler/ConcreteClass.java  |   0
 .../java/org/apache/geode/ExpirationDetector.java  |   0
 .../java/org/apache/geode/cache/query/Utils.java   |   0
 .../cache/query/functional/GroupByTestImpl.java    |   0
 .../query/functional/GroupByTestInterface.java     |   0
 .../NonDistinctOrderByTestImplementation.java      |   0
 .../cache/query/functional/PdxGroupByTestImpl.java |   0
 .../query/functional/StructSetOrResultsSet.java    |   0
 .../geode/cache/query/transaction/Person.java      |   0
 .../geode/cache/snapshot/RegionGenerator.java      |   0
 .../AnalyzeSerializablesJUnitTestBase.java         |   6 +-
 .../geode/codeAnalysis/ClassAndMethodDetails.java  |   0
 .../apache/geode/codeAnalysis/ClassAndMethods.java |   0
 .../codeAnalysis/ClassAndVariableDetails.java      |   0
 .../geode/codeAnalysis/ClassAndVariables.java      |   0
 .../geode/codeAnalysis/CompiledClassUtils.java     |   0
 .../codeAnalysis/decode/CompiledAttribute.java     |   0
 .../geode/codeAnalysis/decode/CompiledClass.java   |   0
 .../geode/codeAnalysis/decode/CompiledCode.java    |   0
 .../geode/codeAnalysis/decode/CompiledField.java   |   0
 .../geode/codeAnalysis/decode/CompiledMethod.java  |   0
 .../apache/geode/codeAnalysis/decode/cp/Cp.java    |   0
 .../geode/codeAnalysis/decode/cp/CpClass.java      |   0
 .../geode/codeAnalysis/decode/cp/CpDouble.java     |   0
 .../geode/codeAnalysis/decode/cp/CpFieldref.java   |   0
 .../geode/codeAnalysis/decode/cp/CpFloat.java      |   0
 .../geode/codeAnalysis/decode/cp/CpInteger.java    |   0
 .../decode/cp/CpInterfaceMethodref.java            |   0
 .../codeAnalysis/decode/cp/CpInvokeDynamic.java    |   0
 .../geode/codeAnalysis/decode/cp/CpLong.java       |   0
 .../codeAnalysis/decode/cp/CpMethodHandle.java     |   0
 .../geode/codeAnalysis/decode/cp/CpMethodType.java |   0
 .../geode/codeAnalysis/decode/cp/CpMethodref.java  |   0
 .../codeAnalysis/decode/cp/CpNameAndType.java      |   0
 .../geode/codeAnalysis/decode/cp/CpString.java     |   0
 .../geode/codeAnalysis/decode/cp/CpUtf8.java       |   0
 .../apache/geode/internal/AvailablePortHelper.java |   0
 .../internal/cache/DiskRegionHelperFactory.java    |   0
 .../geode/internal/cache/DiskRegionProperties.java |   0
 .../internal/cache/DiskRegionTestingBase.java      |   0
 .../cache/PartitionedRegionTestHelper.java         |   0
 .../geode/internal/cache/SnapshotTestUtil.java     |   0
 .../geode/internal/cache/UnitTestValueHolder.java  |   0
 .../cache/control/TestMemoryThresholdListener.java |   0
 .../geode/internal/cache/ha/ConflatableObject.java |   0
 .../org/apache/geode/internal/jta/CacheUtils.java  |   0
 .../org/apache/geode/internal/jta/JTAUtils.java    |   0
 .../org/apache/geode/internal/jta/SyncImpl.java    |   0
 .../internal/logging/TestLogWriterFactory.java     |   0
 .../geode/pdx/TestObjectForJSONFormatter.java      |   0
 .../apache/geode/security/SpySecurityManager.java  |   0
 .../java/parReg/query/unittest/NewPortfolio.java   |   0
 .../main}/java/parReg/query/unittest/Position.java |   0
 .../src/main}/java/util/TestException.java         |   0
 ....apache.geode.internal.cache.xmlcache.XmlParser |   2 +
 .../org.springframework.shell.core.CommandMarker   |   2 +
 .../org/apache/geode/internal/net/multiKey.jks     | Bin
 .../apache/geode/internal/net/multiKeyTrust.jks    | Bin
 .../internal/deployment/ImplementsFunction.java    |   0
 geode-lucene/build.gradle                          |  27 +-
 .../AnalyzeLuceneSerializablesJUnitTest.java       |   2 +-
 geode-old-client-support/build.gradle              |   7 -
 geode-protobuf-messages/build.gradle               |   1 +
 geode-protobuf/build.gradle                        |  15 +-
 geode-pulse/build.gradle                           |  32 +-
 .../pulse/tests/rules/ScreenshotOnFailureRule.java |   0
 .../tools/pulse/tests/rules/WebDriverRule.java     |   0
 .../geode/tools/pulse/tests/ui/PulseBase.java      |   0
 .../tools/pulse/tests/ui/PulseTestConstants.java   |   0
 .../geode/tools/pulse/tests/ui/PulseTestUtils.java |   0
 geode-rebalancer/build.gradle                      |   9 +-
 .../geode/cache/util/AutoBalancerJUnitTest.java    |   0
 geode-wan/build.gradle                             |  11 +-
 ...rityManagerWithInvalidCredentials.security.json |   0
 .../AnalyzeWANSerializablesJUnitTest.java          |   2 +-
 .../wan/parallel/BatchRemovalThreadHelper.java     |   0
 geode-web-api/build.gradle                         |  12 +-
 .../AnalyzeWebApiSerializablesJUnitTest.java       |   2 +-
 geode-web/build.gradle                             |  46 +-
 gradle/test.gradle                                 |  19 +-
 345 files changed, 307 insertions(+), 930 deletions(-)

diff --git a/extensions/geode-modules-session/build.gradle b/extensions/geode-modules-session/build.gradle
index 12339da..b18a4ce 100644
--- a/extensions/geode-modules-session/build.gradle
+++ b/extensions/geode-modules-session/build.gradle
@@ -21,22 +21,18 @@ dependencies {
   compile project(':extensions/geode-modules-session-internal')
   compile project(':geode-core')
 
-  testCompile project(':geode-junit')
-
-  testCompile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  testCompile 'org.slf4j:slf4j-api:' + project.'slf4j-api.version'
-  testCompile('com.mockrunner:mockrunner-servlet:' + project.'mockrunner.version') {
+  integrationTestCompile project(":geode-dunit")
+  integrationTestCompile ('org.httpunit:httpunit:' + project.'httpunit.version') {
+    exclude group: 'javax.servlet'
+  }
+  integrationTestCompile(group: 'org.eclipse.jetty', name: 'jetty-http', version: project.'jetty.version', classifier: 'tests')
+  integrationTestCompile(group: 'org.eclipse.jetty', name: 'jetty-servlet', version: project.'jetty.version', classifier: 'tests')
+  integrationTestCompile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
+  integrationTestCompile 'org.slf4j:slf4j-api:' + project.'slf4j-api.version'
+  integrationTestCompile('com.mockrunner:mockrunner-servlet:' + project.'mockrunner.version') {
     exclude group: 'jboss'
     exclude group: 'xerces'
   }
-  testCompile(group: 'org.eclipse.jetty', name: 'jetty-http', version: project.'jetty.version', classifier: 'tests')
-  testCompile(group: 'org.eclipse.jetty', name: 'jetty-servlet', version: project.'jetty.version', classifier: 'tests')
-  testCompile ('org.httpunit:httpunit:' + project.'httpunit.version') {
-    exclude group: 'javax.servlet'
-  }
-
-
-  integrationTestCompile project(":geode-dunit")
 }
 
 jar {
diff --git a/extensions/geode-modules-tomcat7/build.gradle b/extensions/geode-modules-tomcat7/build.gradle
index 8f3ecf0..ef79d3f 100644
--- a/extensions/geode-modules-tomcat7/build.gradle
+++ b/extensions/geode-modules-tomcat7/build.gradle
@@ -32,19 +32,17 @@ dependencies {
   }
   compile 'org.apache.tomcat:tomcat-juli:' + project.'tomcat7.version'
 
-  testCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
-
-  testRuntime 'javax.annotation:jsr250-api:' + project.'javax.jsr250-api.version'
-  testRuntime 'javax.ejb:ejb-api:' + project.'javax.ejb-api.version'
-  testRuntime 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  testRuntime 'org.eclipse.persistence:javax.persistence:' + project.'javax.persistence-api.version'
-
-  testCompile project(path: ':geode-junit')
-  testCompile files(project(':extensions/geode-modules').sourceSets.test.output)
-
   integrationTestCompile project(":geode-dunit")
+  integrationTestCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
+
+  // TODO fix test dependency on other projects
   integrationTestCompile files(project(':extensions/geode-modules').sourceSets.integrationTest.output)
 
+  integrationTestRuntime 'javax.annotation:jsr250-api:' + project.'javax.jsr250-api.version'
+  integrationTestRuntime 'javax.ejb:ejb-api:' + project.'javax.ejb-api.version'
+  integrationTestRuntime 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
+  integrationTestRuntime 'org.eclipse.persistence:javax.persistence:' + project.'javax.persistence-api.version'
+
   eclipse.classpath.file {
     whenMerged { classpath ->
       classpath.entries.removeAll { entry -> entry.path.contains('geode-modules/build')}
diff --git a/extensions/geode-modules-tomcat8/build.gradle b/extensions/geode-modules-tomcat8/build.gradle
index a72721a..e98a90d 100644
--- a/extensions/geode-modules-tomcat8/build.gradle
+++ b/extensions/geode-modules-tomcat8/build.gradle
@@ -30,12 +30,10 @@ dependencies {
     exclude module: 'tomcat-servlet-api'
   }
   compile 'org.apache.tomcat:tomcat-juli:' + project.'tomcat8.version'
-
-  testCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
+  compile 'javax.servlet:javax.servlet-api:' + '3.1.0'
 
   testRuntime 'javax.annotation:jsr250-api:' + project.'javax.jsr250-api.version'
   testRuntime 'javax.ejb:ejb-api:' + project.'javax.ejb-api.version'
-  compile 'javax.servlet:javax.servlet-api:' + '3.1.0'
   testRuntime 'org.eclipse.persistence:javax.persistence:' + project.'javax.persistence-api.version'
   testCompile 'javax.security.auth.message:javax.security.auth.message-api:' + '1.1'
 
@@ -45,6 +43,10 @@ dependencies {
   testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
   distributedTestCompile project(":geode-dunit")
+  distributedTestCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
+  // TODO remove shared source dependency
+  distributedTestCompile sourceSets.integrationTest.output
+  distributedTestCompile project(':extensions/geode-modules').sourceSets.integrationTest.output
 
   eclipse.classpath.file {
     whenMerged { classpath ->
diff --git a/extensions/geode-modules/build.gradle b/extensions/geode-modules/build.gradle
index 2672576..67dc91f 100644
--- a/extensions/geode-modules/build.gradle
+++ b/extensions/geode-modules/build.gradle
@@ -31,10 +31,10 @@ dependencies {
   testCompile project(':geode-junit')
 
   testCompile 'org.apache.bcel:bcel:' + project.'bcel.version'
-  testCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
-  testRuntime 'org.apache.tomcat:coyote:' + project.'tomcat6.version'
 
   integrationTestCompile project(":geode-dunit")
+  integrationTestCompile 'org.httpunit:httpunit:' + project.'httpunit.version'
+  integrationTestCompile 'org.apache.tomcat:coyote:' + project.'tomcat6.version'
 }
 
 disableMavenPublishing()
diff --git a/extensions/geode-modules/src/test/java/org/apache/geode/modules/session/Callback.java b/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/Callback.java
similarity index 100%
rename from extensions/geode-modules/src/test/java/org/apache/geode/modules/session/Callback.java
rename to extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/Callback.java
diff --git a/extensions/geode-modules/src/test/java/org/apache/geode/modules/session/CommandServlet.java b/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/CommandServlet.java
similarity index 100%
rename from extensions/geode-modules/src/test/java/org/apache/geode/modules/session/CommandServlet.java
rename to extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/CommandServlet.java
diff --git a/extensions/geode-modules/src/test/java/org/apache/geode/modules/session/EmbeddedTomcat.java b/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/EmbeddedTomcat.java
similarity index 100%
rename from extensions/geode-modules/src/test/java/org/apache/geode/modules/session/EmbeddedTomcat.java
rename to extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/EmbeddedTomcat.java
diff --git a/extensions/geode-modules/src/test/java/org/apache/geode/modules/session/QueryCommand.java b/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/QueryCommand.java
similarity index 100%
rename from extensions/geode-modules/src/test/java/org/apache/geode/modules/session/QueryCommand.java
rename to extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/QueryCommand.java
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 8b54c8b..84b2aa7 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -65,9 +65,6 @@ configurations {
 }
 
 dependencies {
-  compileOnly project(':geode-core')
-  testCompile project(':geode-core')
-
   archives project(':geode-common')
   archives project(':geode-json')
   archives project(':geode-core')
@@ -82,74 +79,67 @@ dependencies {
   archives project(':geode-cq')
   archives project(':geode-rebalancer')
 
-  testCompile project(':geode-junit')
-  testCompile project(':geode-pulse')
-  testCompile files(project(':geode-core').sourceSets.test.output)
-  testCompile files(project(':geode-pulse').sourceSets.test.output)
-  testCompile ('org.springframework:spring-web:' + project.'springframework.version') {
-    exclude module: 'aopalliance'
-    exclude module: 'spring-aop'
-  }
-
-  testCompile 'org.apache.httpcomponents:httpclient:' + project.'httpclient.version'
-  testCompile 'org.apache.httpcomponents:httpcore:' + project.'httpcore.version'
-  testCompile 'com.google.guava:guava:' + project.'guava.version'
-  testCompile 'org.apache.commons:commons-exec:' + project.'commons-exec.version'
 
-  testCompile group: 'org.codehaus.cargo', name: 'cargo-core-uberjar', version: '1.6.3'
-
-  testCompile (project(':extensions/geode-modules')) {
-    // Remove everything related to Tomcat
-    exclude group: 'org.apache.tomcat'
-  }
-  testCompile (project(':extensions/geode-modules-session-internal')) {
-    // Remove everything related to Tomcat
-    exclude group: 'org.apache.tomcat'
-  }
+  testCompile project(':geode-core')
+  testCompile project(':geode-junit')
 
-  testCompile project(':extensions/session-testing-war')
 
-  testCompile 'org.seleniumhq.selenium:selenium-api:' + project.'selenium.version'
-  testCompile 'org.seleniumhq.selenium:selenium-chrome-driver:' + project.'selenium.version'
-  testCompile 'org.seleniumhq.selenium:selenium-support:' + project.'selenium.version'
+  integrationTestCompile project(':geode-core')
+  integrationTestCompile project(":geode-junit")
+  integrationTestCompile project(":geode-dunit")
+  integrationTestCompile project(":geode-pulse")
+  integrationTestCompile 'org.apache.httpcomponents:httpclient:' + project.'httpclient.version'
 
-  testRuntime files("${System.getProperty('java.home')}/../lib/tools.jar")
-  testRuntime files("$buildDir/install/${distributions.main.baseName}/lib/geode-dependencies.jar")
 
+  distributedTestCompile project(':geode-core')
+  distributedTestCompile project(':extensions/session-testing-war')
+  distributedTestCompile group: 'org.codehaus.cargo', name: 'cargo-core-uberjar', version: '1.6.3'
+  distributedTestCompile 'org.apache.httpcomponents:httpclient:' + project.'httpclient.version'
+  // TODO refactor out common test framework
+  distributedTestCompile sourceSets.integrationTest.output
 
-  gfshDependencies ('org.springframework:spring-web:' + project.'springframework.version'){
-    exclude module: 'spring-core'
-    exclude module: 'commons-logging'
+  distributedTestRuntime (project(':extensions/geode-modules-session-internal')) {
+    exclude group: 'org.apache.tomcat'
   }
 
-  testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
-  integrationTestCompile project(":geode-dunit")
+  acceptanceTestCompile project(':geode-core')
+  acceptanceTestCompile project(":geode-dunit")
 
-  distributedTestCompile project(":geode-dunit")
 
-  acceptanceTestCompile project(":geode-dunit")
+  uiTestCompile project(':geode-core')
+  uiTestCompile project(":geode-dunit")
+  uiTestCompile project(":geode-pulse")
+  uiTestCompile 'org.seleniumhq.selenium:selenium-api:' + project.'selenium.version'
+  uiTestCompile 'org.seleniumhq.selenium:selenium-remote-driver:' + project.'selenium.version'
+  uiTestCompile 'org.seleniumhq.selenium:selenium-support:' + project.'selenium.version'
   // TODO refactor out common test framework
-  upgradeTestCompile sourceSets.distributedTest.output
+  uiTestCompile sourceSets.integrationTest.output
+  uiTestCompile project(":geode-pulse").sourceSets.uiTest.output
 
-  uiTestCompile project(":geode-dunit")
+  uiTestRuntime project(":geode-core")
+  uiTestRuntime 'org.seleniumhq.selenium:selenium-chrome-driver:' + project.'selenium.version'
 
+
+  upgradeTestCompile project(':geode-core')
   upgradeTestCompile project(":geode-dunit")
   // TODO refactor out common test framework
   upgradeTestCompile sourceSets.distributedTest.output
-}
+  upgradeTestCompile sourceSets.test.output
 
-sourceSets {
-}
+  upgradeTestRuntime group: 'org.codehaus.cargo', name: 'cargo-core-uberjar', version: '1.6.3'
+  upgradeTestRuntime 'org.apache.httpcomponents:httpclient:' + project.'httpclient.version'
+  upgradeTestRuntime project(':extensions/session-testing-war')
 
-test {
-  // test from the actual classpath not the gradle classpath
-  dependsOn installDist
-  // @TODO: this doesn't seem to be working need to get basename first.
-  classpath += files "$buildDir/install/${distributions.main.baseName}/lib/geode-dependencies.jar"
+
+  gfshDependencies ('org.springframework:spring-web:' + project.'springframework.version'){
+    exclude module: 'spring-core'
+    exclude module: 'commons-logging'
+  }
 }
 
 tasks.withType(Test){
+  dependsOn installDist
   environment 'GEODE_HOME', "$buildDir/install/${distributions.main.baseName}"
 }
 
diff --git a/geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionExecuteDUnitTest.java b/geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionExecuteDUnitTest.java
index f468ecd..0541f22 100644
--- a/geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionExecuteDUnitTest.java
+++ b/geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionExecuteDUnitTest.java
@@ -20,9 +20,6 @@ import static org.apache.geode.test.junit.rules.HttpResponseAssert.assertRespons
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.io.File;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
 import java.util.Properties;
 
 import org.junit.BeforeClass;
@@ -39,6 +36,7 @@ import org.apache.geode.test.dunit.rules.MemberVM;
 import org.apache.geode.test.junit.categories.RestAPITest;
 import org.apache.geode.test.junit.rules.GeodeDevRestClient;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
+import org.apache.geode.util.test.TestUtil;
 
 @Category({RestAPITest.class})
 public class RestFunctionExecuteDUnitTest {
@@ -111,13 +109,12 @@ public class RestFunctionExecuteDUnitTest {
   }
 
   // find ImplementsFunction.java in the geode-core resource
-  private static File loadClassToFile() throws URISyntaxException {
-    URL resourceFileURL = Function.class.getClassLoader()
-        .getResource("org/apache/geode/management/internal/deployment/ImplementsFunction.java");
-    assertThat(resourceFileURL).isNotNull();
+  private static File loadClassToFile() {
+    String resourcePath = TestUtil.getResourcePath(Function.class.getClassLoader(),
+        "org/apache/geode/management/internal/deployment/ImplementsFunction.java");
+    assertThat(resourcePath).isNotNull();
 
-    URI resourceUri = resourceFileURL.toURI();
-    return new File(resourceUri);
+    return new File(resourcePath);
   }
 
 
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/RestFunctionTemplate.java b/geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionTemplate.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/RestFunctionTemplate.java
rename to geode-assembly/src/distributedTest/java/org/apache/geode/rest/internal/web/RestFunctionTemplate.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/session/tests/Client.java b/geode-assembly/src/distributedTest/java/org/apache/geode/session/tests/Client.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/session/tests/Client.java
rename to geode-assembly/src/distributedTest/java/org/apache/geode/session/tests/Client.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/AddFreeItemToOrders.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/AddFreeItemToOrders.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/AddFreeItemToOrders.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/AddFreeItemToOrders.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Customer.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Customer.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Customer.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Customer.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/DateTimeUtils.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/DateTimeUtils.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/DateTimeUtils.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/DateTimeUtils.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Gender.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Gender.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Gender.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Gender.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetAllEntries.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetAllEntries.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetAllEntries.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetAllEntries.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetDeliveredOrders.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetDeliveredOrders.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetDeliveredOrders.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetDeliveredOrders.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetRegions.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetRegions.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetRegions.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetRegions.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetValueForKey.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetValueForKey.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/GetValueForKey.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/GetValueForKey.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Item.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Item.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Item.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Item.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/NoArgumentFunction.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/NoArgumentFunction.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/NoArgumentFunction.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/NoArgumentFunction.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Order.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Order.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Order.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Order.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Person.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Person.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/Person.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/Person.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/PutKeyFunction.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/PutKeyFunction.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/PutKeyFunction.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/PutKeyFunction.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/RedactingPostProcessor.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/RedactingPostProcessor.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/RedactingPostProcessor.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/RedactingPostProcessor.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/RestTestUtils.java b/geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/RestTestUtils.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/rest/internal/web/controllers/RestTestUtils.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/rest/internal/web/controllers/RestTestUtils.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/test/junit/rules/EmbeddedPulseRule.java b/geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/EmbeddedPulseRule.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/test/junit/rules/EmbeddedPulseRule.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/EmbeddedPulseRule.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/test/junit/rules/GeodeDevRestClient.java b/geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/GeodeDevRestClient.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/test/junit/rules/GeodeDevRestClient.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/GeodeDevRestClient.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/test/junit/rules/GeodeHttpClientRule.java b/geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/GeodeHttpClientRule.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/test/junit/rules/GeodeHttpClientRule.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/GeodeHttpClientRule.java
diff --git a/geode-assembly/src/test/java/org/apache/geode/test/junit/rules/HttpResponseAssert.java b/geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/HttpResponseAssert.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/test/junit/rules/HttpResponseAssert.java
rename to geode-assembly/src/integrationTest/java/org/apache/geode/test/junit/rules/HttpResponseAssert.java
diff --git a/geode-assembly/src/test/resources/expected_jars.txt b/geode-assembly/src/integrationTest/resources/expected_jars.txt
similarity index 100%
rename from geode-assembly/src/test/resources/expected_jars.txt
rename to geode-assembly/src/integrationTest/resources/expected_jars.txt
diff --git a/geode-assembly/src/test/resources/sampleJson.json b/geode-assembly/src/integrationTest/resources/sampleJson.json
similarity index 100%
rename from geode-assembly/src/test/resources/sampleJson.json
rename to geode-assembly/src/integrationTest/resources/sampleJson.json
diff --git a/geode-assembly/src/test/java/org/apache/geode/tools/pulse/ui/PulseAcceptanceTestBase.java b/geode-assembly/src/uiTest/java/org/apache/geode/tools/pulse/ui/PulseAcceptanceTestBase.java
similarity index 100%
rename from geode-assembly/src/test/java/org/apache/geode/tools/pulse/ui/PulseAcceptanceTestBase.java
rename to geode-assembly/src/uiTest/java/org/apache/geode/tools/pulse/ui/PulseAcceptanceTestBase.java
diff --git a/geode-connectors/build.gradle b/geode-connectors/build.gradle
index 58e3793..8b1035e 100644
--- a/geode-connectors/build.gradle
+++ b/geode-connectors/build.gradle
@@ -18,35 +18,30 @@
 evaluationDependsOn(":geode-core")
 
 repositories {
-    maven {
-        url 'https://dl.bintray.com/palantir/releases'
-        // docker-compose-rule is published on bintray
-    }
+  maven {
+    // docker-compose-rule is published on bintray
+    url 'https://dl.bintray.com/palantir/releases'
+  }
 }
 
 dependencies {
-    compile project(':geode-core')
-    compile project(':geode-common')
-    compile group: 'com.zaxxer', name: 'HikariCP', version: project.'HikariCP.version'
+  compile project(':geode-core')
+  compile project(':geode-common')
+  compile group: 'com.zaxxer', name: 'HikariCP', version: project.'HikariCP.version'
 
 
-    testCompile project(':geode-junit')
+  testCompile project(':geode-junit')
 
-    //Connectors test framework.
-    testRuntime 'org.apache.derby:derby:' + project.'derby.version'
-    testCompile group: 'mysql', name: 'mysql-connector-java', version: '5.1.46'
-    testCompile group: 'org.postgresql', name: 'postgresql', version: '42.2.2'
-    testCompile 'com.palantir.docker.compose:docker-compose-rule-junit4:0.31.1'
-    testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
-    testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
-    testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
-    integrationTestCompile project(":geode-dunit")
+  integrationTestCompile project(":geode-dunit")
 
-    distributedTestCompile project(":geode-dunit")
 
-    acceptanceTestCompile project(":geode-dunit")
-}
+  acceptanceTestCompile project(":geode-dunit")
+  acceptanceTestCompile group: 'mysql', name: 'mysql-connector-java', version: '5.1.46'
+  acceptanceTestCompile group: 'com.palantir.docker.compose', name: 'docker-compose-rule-junit4', version: '0.31.1'
 
-integrationTest.forkEvery 0
+  acceptanceTestRuntime group: 'org.apache.derby', name: 'derby', version: project.'derby.version'
+  acceptanceTestRuntime group: 'org.postgresql', name: 'postgresql', version: '42.2.2'
+}
 
+integrationTest.forkEvery 0
\ No newline at end of file
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/ClassWithSupportedPdxFields.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/ClassWithSupportedPdxFields.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/ClassWithSupportedPdxFields.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/ClassWithSupportedPdxFields.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/Employee.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/Employee.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/Employee.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/Employee.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestableConnectionManager.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/internal/TestableConnectionManager.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestableConnectionManager.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/connectors/jdbc/internal/TestableConnectionManager.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java b/geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
similarity index 100%
rename from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
rename to geode-connectors/src/acceptanceTest/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml b/geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
similarity index 100%
rename from geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
rename to geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml b/geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
similarity index 100%
rename from geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
rename to geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml b/geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/mysql.yml
similarity index 100%
rename from geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
rename to geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/mysql.yml
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml b/geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/postgres.yml
similarity index 100%
rename from geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
rename to geode-connectors/src/acceptanceTest/resources/org/apache/geode/connectors/jdbc/postgres.yml
diff --git a/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java b/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java
index 0e30238..88d12c7 100644
--- a/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java
+++ b/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java
@@ -19,7 +19,7 @@ import org.junit.experimental.categories.Category;
 import org.apache.geode.test.junit.categories.SerializationTest;
 
 @Category({SerializationTest.class})
-public class AnalyzeConnectorsSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeConnectorsSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
   @Override
   protected String getModuleName() {
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 560b23f..5ce12fb 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -46,7 +46,6 @@ dependencies {
 
   // External
   compileOnly files("${System.getProperty('java.home')}/../lib/tools.jar")
-  testCompile files("${System.getProperty('java.home')}/../lib/tools.jar")
   compile 'com.github.stephenc.findbugs:findbugs-annotations:' + project.'stephenc-findbugs.version'
   compile 'org.jgroups:jgroups:' + project.'jgroups.version'
   compile 'antlr:antlr:' + project.'antlr.version'
@@ -140,37 +139,49 @@ dependencies {
   compile project(':geode-common')
   compile project(':geode-json')
 
-  jcaCompile sourceSets.main.output
 
-  testCompile project(':geode-junit')
+  jcaCompile sourceSets.main.output
 
-  testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
-  // Test Dependencies
-  // External
-  testCompile 'com.jayway.jsonpath:json-path-assert:' + project.'json-path-assert.version'
+  testCompile project(':geode-junit')
+  testCompile project(':geode-concurrency-test')
   testCompile 'org.apache.bcel:bcel:' + project.'bcel.version'
-  testRuntime 'org.apache.derby:derby:' + project.'derby.version'
   testCompile 'org.mockito:mockito-core:' + project.'mockito-core.version'
+  testCompile 'org.springframework:spring-test:' + project.'springframework.version'
+  testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
+  testCompile files("${System.getProperty('java.home')}/../lib/tools.jar")
+
   testRuntime 'commons-collections:commons-collections:' + project.'commons-collections.version'
   testRuntime 'commons-configuration:commons-configuration:' + project.'commons-configuration.version'
   testRuntime 'commons-io:commons-io:' + project.'commons-io.version'
   testRuntime 'commons-validator:commons-validator:' + project.'commons-validator.version'
-  testCompile 'net.spy:spymemcached:' + project.'spymemcached.version'
-  testCompile 'redis.clients:jedis:' + project.'jedis.version'
-  testCompile 'org.springframework:spring-test:' + project.'springframework.version'
+  testRuntime 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
 
 
-  testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
-  testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
-  testCompile 'com.pholser:junit-quickcheck-guava:' + project.'junit-quickcheck.version'
+  integrationTestCompile project(":geode-dunit")
+  integrationTestCompile project(':geode-concurrency-test')
+  integrationTestCompile 'redis.clients:jedis:' + project.'jedis.version'
+  integrationTestCompile 'org.apache.bcel:bcel:' + project.'bcel.version'
+  integrationTestCompile 'org.springframework:spring-test:' + project.'springframework.version'
+  integrationTestCompile 'net.spy:spymemcached:' + project.'spymemcached.version'
+  integrationTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+
+  integrationTestRuntime 'org.apache.derby:derby:' + project.'derby.version'
+  integrationTestRuntime 'xerces:xercesImpl:' + project.'xercesImpl.version'
 
-  testRuntime 'xerces:xercesImpl:' + project.'xercesImpl.version'
-  testCompile project(':geode-concurrency-test')
 
-  integrationTestCompile project(":geode-dunit")
   distributedTestCompile project(":geode-dunit")
+  distributedTestCompile 'redis.clients:jedis:' + project.'jedis.version'
+  distributedTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+  distributedTestCompile 'com.jayway.jsonpath:json-path-assert:' + project.'json-path-assert.version'
+
+  distributedTestRuntime 'org.apache.derby:derby:' + project.'derby.version'
+
+
   upgradeTestCompile project(":geode-dunit")
+
+
+  performanceTestCompile project(":geode-junit")
 }
 
 def generatedResources = "$buildDir/generated-resources/main"
diff --git a/geode-core/src/test/java/org/apache/geode/TestDataSerializer.java b/geode-core/src/distributedTest/java/org/apache/geode/TestDataSerializer.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/TestDataSerializer.java
rename to geode-core/src/distributedTest/java/org/apache/geode/TestDataSerializer.java
diff --git a/geode-core/src/distributedTest/java/org/apache/geode/cache/query/dunit/OrderByPartitionedDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/cache/query/dunit/OrderByPartitionedDUnitTest.java
index 270d76c..84750f3 100644
--- a/geode-core/src/distributedTest/java/org/apache/geode/cache/query/dunit/OrderByPartitionedDUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/cache/query/dunit/OrderByPartitionedDUnitTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.cache.query.IndexInvalidException;
 import org.apache.geode.cache.query.IndexNameConflictException;
 import org.apache.geode.cache.query.IndexType;
 import org.apache.geode.cache.query.RegionNotFoundException;
-import org.apache.geode.cache.query.functional.OrderByPartitionedJUnitTest;
+import org.apache.geode.cache.query.functional.OrderByPartitionedJUnitTestBase;
 import org.apache.geode.test.dunit.Host;
 import org.apache.geode.test.dunit.SerializableRunnable;
 import org.apache.geode.test.dunit.VM;
@@ -39,14 +39,14 @@ import org.apache.geode.test.junit.categories.OQLQueryTest;
 @Category({OQLQueryTest.class})
 public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
 
-  private OrderByPartitionedJUnitTest createTestInstance() {
+  private OrderByPartitionedJUnitTestBase createTestInstance() {
     Host host = Host.getHost(0);
     final VM vm0 = host.getVM(0);
     final VM vm1 = host.getVM(1);
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
 
-    OrderByPartitionedJUnitTest test = new OrderByPartitionedJUnitTest() {
+    OrderByPartitionedJUnitTestBase test = new OrderByPartitionedJUnitTestBase() {
       @Override
       public Region createRegion(String regionName, Class valueConstraint) {
         // TODO Auto-generated method stub
@@ -89,7 +89,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderByWithIndexResultDefaultProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -102,7 +102,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderByWithIndexResultWithProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -115,7 +115,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testMultiColOrderByWithIndexResultDefaultProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -128,7 +128,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testMultiColOrderByWithIndexResultWithProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -141,7 +141,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testMultiColOrderByWithMultiIndexResultDefaultProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -154,7 +154,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testMultiColOrderByWithMultiIndexResultProjection();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -167,7 +167,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testLimitNotAppliedIfOrderByNotUsingIndex();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -180,7 +180,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderByWithNullValuesUseIndex();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -193,7 +193,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderByForUndefined();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -206,7 +206,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderedResultsPartitionedRegion_Bug43514_1();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -219,7 +219,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderedResultsPartitionedRegion_Bug43514_2();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
@@ -232,7 +232,7 @@ public class OrderByPartitionedDUnitTest extends JUnit4CacheTestCase {
     final VM vm2 = host.getVM(2);
     final VM vm3 = host.getVM(3);
     Cache cache = this.getCache();
-    OrderByPartitionedJUnitTest test = createTestInstance();
+    OrderByPartitionedJUnitTestBase test = createTestInstance();
     test.testOrderByWithNullValues();
     this.closeCache(vm0, vm1, vm2, vm3);
   }
diff --git a/geode-core/src/test/java/org/apache/geode/cache30/CacheXMLPartitionResolver.java b/geode-core/src/distributedTest/java/org/apache/geode/cache30/CacheXMLPartitionResolver.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache30/CacheXMLPartitionResolver.java
rename to geode-core/src/distributedTest/java/org/apache/geode/cache30/CacheXMLPartitionResolver.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache30/TestPdxSerializer.java b/geode-core/src/distributedTest/java/org/apache/geode/cache30/TestPdxSerializer.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache30/TestPdxSerializer.java
rename to geode-core/src/distributedTest/java/org/apache/geode/cache30/TestPdxSerializer.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache30/TestTransactionWriter.java b/geode-core/src/distributedTest/java/org/apache/geode/cache30/TestTransactionWriter.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache30/TestTransactionWriter.java
rename to geode-core/src/distributedTest/java/org/apache/geode/cache30/TestTransactionWriter.java
diff --git a/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java
similarity index 88%
copy from geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java
copy to geode-core/src/distributedTest/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java
index 0e30238..55d41ba 100644
--- a/geode-connectors/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeConnectorsSerializablesJUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java
@@ -14,15 +14,17 @@
  */
 package org.apache.geode.codeAnalysis;
 
+
+
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.SerializationTest;
 
 @Category({SerializationTest.class})
-public class AnalyzeConnectorsSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
-  @Override
   protected String getModuleName() {
-    return "geode-connectors";
+    return "geode-core";
   }
+
 }
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/ARMLockTestHookAdapter.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ARMLockTestHookAdapter.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/ARMLockTestHookAdapter.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ARMLockTestHookAdapter.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/CommitFunction.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/CommitFunction.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/CommitFunction.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/CommitFunction.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/MonthBasedPartitionResolver.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/MonthBasedPartitionResolver.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/MonthBasedPartitionResolver.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/MonthBasedPartitionResolver.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/NestedTransactionFunction.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/NestedTransactionFunction.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/NestedTransactionFunction.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/NestedTransactionFunction.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/OffHeapTestUtil.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/OffHeapTestUtil.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/OffHeapTestUtil.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/OffHeapTestUtil.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForRootRegion.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForRootRegion.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForRootRegion.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForRootRegion.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForSubRegion.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForSubRegion.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForSubRegion.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionCacheLoaderForSubRegion.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionGetSomeKeys.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionGetSomeKeys.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionGetSomeKeys.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionGetSomeKeys.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/RollbackFunction.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/RollbackFunction.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/RollbackFunction.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/RollbackFunction.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/SerializableMonth.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/SerializableMonth.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/SerializableMonth.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/SerializableMonth.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/TestDelta.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestDelta.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/TestDelta.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestDelta.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/TestNonSizerObject.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestNonSizerObject.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/TestNonSizerObject.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestNonSizerObject.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/TestObjectSizerImpl.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestObjectSizerImpl.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/TestObjectSizerImpl.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/TestObjectSizerImpl.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/execute/BooleanFunction.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/BooleanFunction.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/execute/BooleanFunction.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/BooleanFunction.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/execute/CustomResultCollector.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/CustomResultCollector.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/execute/CustomResultCollector.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/CustomResultCollector.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/execute/TimeKeeper.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/TimeKeeper.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/execute/TimeKeeper.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/execute/TimeKeeper.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/functions/DistribuedRegionFunctionFunctionInvocationException.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/DistribuedRegionFunctionFunctionInvocationException.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/functions/DistribuedRegionFunctionFunctionInvocationException.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/DistribuedRegionFunctionFunctionInvocationException.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/functions/FireAndForgetFunctionOnAllServers.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/FireAndForgetFunctionOnAllServers.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/functions/FireAndForgetFunctionOnAllServers.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/FireAndForgetFunctionOnAllServers.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/functions/LocalDataSetFunction.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/LocalDataSetFunction.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/functions/LocalDataSetFunction.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/functions/LocalDataSetFunction.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/HAHelper.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ha/HAHelper.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/ha/HAHelper.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ha/HAHelper.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate1.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate1.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate1.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate1.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate2.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate2.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate2.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate2.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate3.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate3.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate3.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/MyDate3.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/QuarterPartitionResolver.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/QuarterPartitionResolver.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/QuarterPartitionResolver.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/QuarterPartitionResolver.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/SingleHopQuarterPartitionResolver.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/SingleHopQuarterPartitionResolver.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/fixed/SingleHopQuarterPartitionResolver.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/SingleHopQuarterPartitionResolver.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/snapshot/TestObject.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/snapshot/TestObject.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/snapshot/TestObject.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/snapshot/TestObject.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/DeltaEOFException.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DeltaEOFException.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/DeltaEOFException.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DeltaEOFException.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/FaultyDelta.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/FaultyDelta.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/FaultyDelta.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/FaultyDelta.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/HaHelper.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/HaHelper.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/HaHelper.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/HaHelper.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/process/io/IntegerFileReader.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/process/io/IntegerFileReader.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/process/io/IntegerFileReader.java
rename to geode-core/src/distributedTest/java/org/apache/geode/internal/process/io/IntegerFileReader.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/CompositeStats.java b/geode-core/src/distributedTest/java/org/apache/geode/management/CompositeStats.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/CompositeStats.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/CompositeStats.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/CompositeTestMBean.java b/geode-core/src/distributedTest/java/org/apache/geode/management/CompositeTestMBean.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/CompositeTestMBean.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/CompositeTestMBean.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/CompositeTestMXBean.java b/geode-core/src/distributedTest/java/org/apache/geode/management/CompositeTestMXBean.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/CompositeTestMXBean.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/CompositeTestMXBean.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/Manager.java b/geode-core/src/distributedTest/java/org/apache/geode/management/Manager.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/Manager.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/Manager.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/Member.java b/geode-core/src/distributedTest/java/org/apache/geode/management/Member.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/Member.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/Member.java
diff --git a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DeployCommandFunctionRegistrationDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DeployCommandFunctionRegistrationDUnitTest.java
index 3892461..ee28502 100644
--- a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DeployCommandFunctionRegistrationDUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DeployCommandFunctionRegistrationDUnitTest.java
@@ -17,9 +17,7 @@ package org.apache.geode.management.internal.cli.commands;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.io.File;
-import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 import java.util.List;
 
 import org.junit.Before;
@@ -38,6 +36,7 @@ import org.apache.geode.test.dunit.rules.MemberVM;
 import org.apache.geode.test.junit.categories.FunctionServiceTest;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTemporaryFolder;
+import org.apache.geode.util.test.TestUtil;
 
 @Category({FunctionServiceTest.class})
 public class DeployCommandFunctionRegistrationDUnitTest {
@@ -96,11 +95,10 @@ public class DeployCommandFunctionRegistrationDUnitTest {
   }
 
   private File loadTestResource(String fileName) throws URISyntaxException {
-    URL resourceFileURL = this.getClass().getResource(fileName);
-    assertThat(resourceFileURL).isNotNull();
+    String filePath = TestUtil.getResourcePath(this.getClass(), fileName);
+    assertThat(filePath).isNotNull();
 
-    URI resourceUri = resourceFileURL.toURI();
-    return new File(resourceUri);
+    return new File(filePath);
   }
 
   private static void assertThatFunctionHasVersion(String functionId, String version) {
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ManagedConnectionFactoryForTesting.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ManagedConnectionFactoryForTesting.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ManagedConnectionFactoryForTesting.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ManagedConnectionFactoryForTesting.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCompressor1.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCompressor1.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCompressor1.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCompressor1.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCustomIdleExpiry.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCustomIdleExpiry.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCustomIdleExpiry.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCustomIdleExpiry.java
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCustomTTLExpiry.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCustomTTLExpiry.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/TestCustomTTLExpiry.java
rename to geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/TestCustomTTLExpiry.java
diff --git a/geode-core/src/test/java/org/apache/geode/security/NoShowValue1PostProcessor.java b/geode-core/src/distributedTest/java/org/apache/geode/security/NoShowValue1PostProcessor.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/security/NoShowValue1PostProcessor.java
rename to geode-core/src/distributedTest/java/org/apache/geode/security/NoShowValue1PostProcessor.java
diff --git a/geode-core/src/test/java/org/apache/geode/security/OtherPDXPostProcessor.java b/geode-core/src/distributedTest/java/org/apache/geode/security/OtherPDXPostProcessor.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/security/OtherPDXPostProcessor.java
rename to geode-core/src/distributedTest/java/org/apache/geode/security/OtherPDXPostProcessor.java
diff --git a/geode-core/src/test/java/org/apache/geode/security/OtherSimplySecurityManager.java b/geode-core/src/distributedTest/java/org/apache/geode/security/OtherSimplySecurityManager.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/security/OtherSimplySecurityManager.java
rename to geode-core/src/distributedTest/java/org/apache/geode/security/OtherSimplySecurityManager.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/BasicDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/BasicDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/BasicDistributedTest.java
rename to geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/BasicDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/GetCurrentVmNumDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/GetCurrentVmNumDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/GetCurrentVmNumDistributedTest.java
rename to geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/GetCurrentVmNumDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/VMDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/VMDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/tests/VMDistributedTest.java
rename to geode-core/src/distributedTest/java/org/apache/geode/test/dunit/tests/VMDistributedTest.java
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/client/internal/cacheserver.cer b/geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/cacheserver.cer
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/client/internal/cacheserver.cer
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/cacheserver.cer
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/client/internal/client.cer b/geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/client.cer
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/client/internal/client.cer
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/client.cer
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/client/internal/default.keystore b/geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/default.keystore
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/client/internal/default.keystore
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/default.keystore
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/client/internal/trusted.keystore b/geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/trusted.keystore
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/client/internal/trusted.keystore
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/client/internal/trusted.keystore
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/query/dunit/IndexCreation.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache/query/dunit/IndexCreation.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/query/dunit/IndexCreation.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/query/dunit/IndexCreation.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/query/dunit/PersistentPartitionWithIndex.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache/query/dunit/PersistentPartitionWithIndex.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/query/dunit/PersistentPartitionWithIndex.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/query/dunit/PersistentPartitionWithIndex.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache/query/partitioned/PRIndexCreation.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache/query/partitioned/PRIndexCreation.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache/query/partitioned/PRIndexCreation.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache/query/partitioned/PRIndexCreation.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_cache.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_cache.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_cache.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_cache.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_gemfire.properties b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_gemfire.properties
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_gemfire.properties
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/CacheXmlParameterizationRegressionTest_gemfire.properties
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/attributesUnordered.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/attributesUnordered.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/attributesUnordered.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/attributesUnordered.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/badFloat.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/badFloat.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/badFloat.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/badFloat.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/badInt.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/badInt.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/badInt.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/badInt.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/badKeyConstraintClass.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/badKeyConstraintClass.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/badKeyConstraintClass.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/badKeyConstraintClass.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/badScope.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/badScope.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/badScope.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/badScope.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/bug44710.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/bug44710.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/bug44710.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/bug44710.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/callbackNotDeclarable.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/callbackNotDeclarable.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/callbackNotDeclarable.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/callbackNotDeclarable.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/callbackWithException.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/callbackWithException.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/callbackWithException.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/callbackWithException.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/coLocation.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/coLocation.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/coLocation.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/coLocation.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/coLocation3.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/coLocation3.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/coLocation3.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/coLocation3.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/ewtest.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/ewtest.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/ewtest.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/ewtest.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/loaderNotLoader.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/loaderNotLoader.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/loaderNotLoader.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/loaderNotLoader.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/malformed.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/malformed.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/malformed.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/malformed.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/namedAttributes.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/namedAttributes.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/namedAttributes.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/namedAttributes.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/partitionedRegion.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/partitionedRegion.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/partitionedRegion.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/partitionedRegion.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/partitionedRegion51.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/partitionedRegion51.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/partitionedRegion51.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/partitionedRegion51.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/sameRootRegion.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/sameRootRegion.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/sameRootRegion.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/sameRootRegion.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/sameSubregion.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/sameSubregion.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/sameSubregion.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/sameSubregion.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/unknownNamedAttributes.xml b/geode-core/src/distributedTest/resources/org/apache/geode/cache30/unknownNamedAttributes.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/unknownNamedAttributes.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/cache30/unknownNamedAttributes.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/cache/CacheServerWithZeroPort.xml b/geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/CacheServerWithZeroPort.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/cache/CacheServerWithZeroPort.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/CacheServerWithZeroPort.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample1.xml b/geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample1.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample1.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample1.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample2.xml b/geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample2.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample2.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/internal/cache/PartitionRegionCacheExample2.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/jta/cachejta.xml b/geode-core/src/distributedTest/resources/org/apache/geode/internal/jta/cachejta.xml
similarity index 100%
copy from geode-core/src/test/resources/org/apache/geode/internal/jta/cachejta.xml
copy to geode-core/src/distributedTest/resources/org/apache/geode/internal/jta/cachejta.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionATemplate b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionATemplate
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionATemplate
rename to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionATemplate
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionBTemplate b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionBTemplate
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionBTemplate
rename to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/cli/commands/DeployCommandRedeployDUnitTest_FunctionBTemplate
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster-empty.xml b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster-empty.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster-empty.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster-empty.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster-region.xml b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster-region.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster-region.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster-region.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster8.xml b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster8.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/configuration/cluster8.xml
rename to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/configuration/cluster8.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java b/geode-core/src/distributedTest/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
similarity index 100%
copy from geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
copy to geode-core/src/distributedTest/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/array.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/array.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/array.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/array.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/attachment.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/attachment.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/attachment.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/attachment.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/attachment2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/attachment2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/attachment2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/attachment2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/book.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/book.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/book.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/book.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/image.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/image.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/image.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/image.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json1.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json1.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json1.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json1.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json10.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json10.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json10.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json10.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json11.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json11.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json11.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json11.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json12.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json12.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json12.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json12.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json13.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json13.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json13.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json13.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json14.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json14.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json14.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json14.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json15.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json15.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json15.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json15.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json16.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json16.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json16.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json16.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json16_2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json16_2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json16_2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json16_2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json17.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json17.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json17.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json17.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json18.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json18.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json18.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json18.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json19.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json19.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json19.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json19.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json20.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json20.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json20.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json20.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json21.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json21.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json21.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json21.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json22.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json22.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json22.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json22.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json23.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json23.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json23.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json23.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json24.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json24.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json24.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json24.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json25.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json25.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json25.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json25.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json26.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json26.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json26.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json26.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json27.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json27.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json27.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json27.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json28.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json28.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json28.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json28.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json29.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json29.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json29.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json29.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json3.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json3.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json3.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json3.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json31.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json31.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json31.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json31.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json4.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json4.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json4.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json4.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json5.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json5.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json5.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json5.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json6.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json6.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json6.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json6.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json7.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json7.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json7.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json7.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json8.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json8.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json8.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json8.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json9.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json9.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json9.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json9.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonListInsideList.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonListInsideList.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonListInsideList.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonListInsideList.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonMongo.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonMongo.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonMongo.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonMongo.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonMongoSingleQuote.tx0 b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonMongoSingleQuote.tx0
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonMongoSingleQuote.tx0
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonMongoSingleQuote.tx0
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonProductdb.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonProductdb.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonProductdb.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonProductdb.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json_google.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json_google.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/json_google.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/json_google.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsoncustomer.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsoncustomer.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsoncustomer.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsoncustomer.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txo b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txo
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txo
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txo
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonemptyobject.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfacebook.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfacebook.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfacebook.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfacebook.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfeed.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfeed.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfeed.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfeed.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfeed2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfeed2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonfeed2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonfeed2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonflicker.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonflicker.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonflicker.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonflicker.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsoniphone.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsoniphone.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsoniphone.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsoniphone.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.tx0 b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.tx0
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.tx0
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.tx0
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonsolrwithcomment.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter1.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter1.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter1.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter1.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter3.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter3.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsontwitter3.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsontwitter3.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonutf.tx0 b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonutf.tx0
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonutf.tx0
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonutf.tx0
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonyahoo.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonyahoo.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonyahoo.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonyahoo.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonyoutube.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonyoutube.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/jsonyoutube.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/jsonyoutube.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/linkden1.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/linkden1.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/linkden1.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/linkden1.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/odata.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/odata.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/odata.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/odata.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/odata2.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/odata2.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/odata2.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/odata2.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/unquoteJsonStrings/json1.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/unquoteJsonStrings/json1.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/unquoteJsonStrings/json1.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/unquoteJsonStrings/json1.txt
diff --git a/geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/weather.txt b/geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/weather.txt
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/pdx/jsonStrings/weather.txt
rename to geode-core/src/distributedTest/resources/org/apache/geode/pdx/jsonStrings/weather.txt
diff --git a/geode-core/src/test/resources/security.json b/geode-core/src/distributedTest/resources/security.json
similarity index 100%
copy from geode-core/src/test/resources/security.json
copy to geode-core/src/distributedTest/resources/security.json
diff --git a/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java b/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java
index 6e4b1fd..2657257 100644
--- a/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java
+++ b/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java
@@ -12,638 +12,13 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.functional;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
 
-import java.util.List;
+package org.apache.geode.cache.query.functional;
 
-import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.AttributesFactory;
-import org.apache.geode.cache.PartitionAttributesFactory;
-import org.apache.geode.cache.Region;
-import org.apache.geode.cache.query.CacheUtils;
-import org.apache.geode.cache.query.Index;
-import org.apache.geode.cache.query.IndexExistsException;
-import org.apache.geode.cache.query.IndexInvalidException;
-import org.apache.geode.cache.query.IndexNameConflictException;
-import org.apache.geode.cache.query.IndexType;
-import org.apache.geode.cache.query.Query;
-import org.apache.geode.cache.query.QueryService;
-import org.apache.geode.cache.query.RegionNotFoundException;
-import org.apache.geode.cache.query.SelectResults;
-import org.apache.geode.cache.query.Struct;
-import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.data.Position;
-import org.apache.geode.cache.query.dunit.TestObject;
-import org.apache.geode.cache.query.internal.QueryObserverHolder;
 import org.apache.geode.test.junit.categories.OQLQueryTest;
 
 @Category({OQLQueryTest.class})
-public class OrderByPartitionedJUnitTest extends OrderByTestImplementation {
-
-  @Override
-  public Region createRegion(String regionName, Class valueConstraint) {
-    PartitionAttributesFactory paf = new PartitionAttributesFactory();
-    AttributesFactory af = new AttributesFactory();
-    af.setPartitionAttributes(paf.create());
-    af.setValueConstraint(valueConstraint);
-    Region r1 = CacheUtils.createRegion(regionName, af.create(), false);
-    return r1;
-
-  }
-
-  @Override
-  public Index createIndex(String indexName, IndexType indexType, String indexedExpression,
-      String fromClause) throws IndexInvalidException, IndexNameConflictException,
-      IndexExistsException, RegionNotFoundException, UnsupportedOperationException {
-    return CacheUtils.getQueryService().createIndex(indexName, indexType, indexedExpression,
-        fromClause);
-  }
-
-  @Override
-  public Index createIndex(String indexName, String indexedExpression, String regionPath)
-      throws IndexInvalidException, IndexNameConflictException, IndexExistsException,
-      RegionNotFoundException, UnsupportedOperationException {
-    return CacheUtils.getQueryService().createIndex(indexName, indexedExpression, regionPath);
-  }
-
-
-
-  @Override
-  public boolean assertIndexUsedOnQueryNode() {
-    return true;
-  }
-
-
-  // Asif: This test to me does not make sense as the bind parameter should be a
-  // constant
-
-  @Test
-  public void testBug() throws Exception {
-    // String queries[] =
-    // {"SELECT DISTINCT * FROM /test WHERE id < $1 ORDER BY $2" };
-    String queries[] = {"SELECT DISTINCT * FROM /test WHERE id < $1 ORDER BY id"};
-    Object r[][] = new Object[queries.length][2];
-    QueryService qs;
-    qs = CacheUtils.getQueryService();
-    Position.resetCounter();
-    // Create Regions
-    PartitionAttributesFactory paf = new PartitionAttributesFactory();
-    AttributesFactory af = new AttributesFactory();
-    // af.setPartitionAttributes(paf.create());
-    Region r1 = CacheUtils.createRegion("test", af.create(), false);
-
-    for (int i = 0; i < 100; i++) {
-      r1.put("key-" + i, new TestObject(i, "ibm"));
-    }
-    // Execute Queries without Indexes
-    for (int i = 0; i < queries.length; i++) {
-      Query q = null;
-      try {
-        q = CacheUtils.getQueryService().newQuery(queries[i]);
-        CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        // r[i][0] = q.execute(new Object[]{new Integer(101),"id"});
-        r[i][0] = q.execute(new Object[] {new Integer(101)});
-        assertEquals(100, ((SelectResults) r[i][0]).size());
-      } catch (Exception e) {
-        e.printStackTrace();
-        fail(q.getQueryString());
-      }
-    }
-  }
-
-  @Test
-  public void testOrderedResultsPartitionedRegion_Bug43514_1() throws Exception {
-    String queries[] = {
-        // Test case No. IUMR021
-        "select distinct * from /portfolio1 p order by status, ID desc",
-        "select distinct * from /portfolio1 p, p.positions.values val order by p.ID, val.secId desc",
-        "select distinct p.status from /portfolio1 p order by p.status",
-        "select distinct status, ID from /portfolio1 order by status, ID",
-        "select distinct p.status, p.ID from /portfolio1 p order by p.status, p.ID",
-        "select distinct key.ID from /portfolio1.keys key order by key.ID",
-        "select distinct key.ID, key.status from /portfolio1.keys key order by key.status, key.ID",
-        "select distinct key.ID, key.status from /portfolio1.keys key order by key.status desc, key.ID",
-        "select distinct key.ID, key.status from /portfolio1.keys key order by key.status, key.ID desc",
-        "select distinct p.status, p.ID from /portfolio1 p order by p.status asc, p.ID",
-        "select distinct p.ID, p.status from /portfolio1 p order by p.ID desc, p.status asc",
-        "select distinct p.ID from /portfolio1 p, p.positions.values order by p.ID",
-        "select distinct p.ID, p.status from /portfolio1 p, p.positions.values order by p.status, p.ID",
-        "select distinct pos.secId from /portfolio1 p, p.positions.values pos order by pos.secId",
-        "select distinct p.ID, pos.secId from /portfolio1 p, p.positions.values pos order by pos.secId, p.ID",
-        "select distinct p.iD from /portfolio1 p order by p.iD",
-        "select distinct p.iD, p.status from /portfolio1 p order by p.iD",
-        "select distinct iD, status from /portfolio1 order by iD",
-        "select distinct p.getID() from /portfolio1 p order by p.getID()",
-        "select distinct p.names[1] from /portfolio1 p order by p.names[1]",
-        "select distinct p.position1.secId, p.ID from /portfolio1 p order by p.position1.secId desc, p.ID",
-        "select distinct p.ID, p.position1.secId from /portfolio1 p order by p.position1.secId, p.ID",
-        "select distinct e.key.ID from /portfolio1.entries e order by e.key.ID",
-        "select distinct e.key.ID, e.value.status from /portfolio1.entries e order by e.key.ID",
-        "select distinct e.key.ID, e.value.status from /portfolio1.entrySet e order by e.key.ID desc , e.value.status desc",
-        "select distinct e.key, e.value from /portfolio1.entrySet e order by e.key.ID, e.value.status desc",
-        "select distinct e.key from /portfolio1.entrySet e order by e.key.ID desc, e.key.pkid desc",
-        "select distinct p.ID, pos.secId from /portfolio1 p, p.positions.values pos order by p.ID, pos.secId",
-        "select distinct p.ID, pos.secId from /portfolio1 p, p.positions.values pos order by p.ID desc, pos.secId desc",
-        "select distinct p.ID, pos.secId from /portfolio1 p, p.positions.values pos order by p.ID desc, pos.secId",
-
-    };
-    Object r[][] = new Object[queries.length][2];
-    QueryService qs;
-    qs = CacheUtils.getQueryService();
-    Position.resetCounter();
-    // Create Regions
-    PartitionAttributesFactory paf = new PartitionAttributesFactory();
-    AttributesFactory af = new AttributesFactory();
-    af.setPartitionAttributes(paf.create());
-    Region r1 = CacheUtils.createRegion("portfolio1", af.create(), false);
-
-    for (int i = 0; i < 50; i++) {
-      r1.put(new Portfolio(i), new Portfolio(i));
-    }
-
-    // Execute Queries without Indexes
-    for (int i = 0; i < queries.length; i++) {
-      Query q = null;
-      try {
-        CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        q = CacheUtils.getQueryService().newQuery(queries[i]);
-        // CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        r[i][0] = q.execute();
-      } catch (Exception e) {
-        e.printStackTrace();
-        fail(q.getQueryString());
-      }
-    }
-    // Create Indexes
-    this.createIndex("i1", IndexType.FUNCTIONAL, "p.status", "/portfolio1 p");
-    this.createIndex("i2", IndexType.FUNCTIONAL, "p.ID", "/portfolio1 p");
-    this.createIndex("i3", IndexType.FUNCTIONAL, "p.position1.secId", "/portfolio1 p");
-    this.createIndex("i4", IndexType.FUNCTIONAL, "key.ID", "/portfolio1.keys key");
-    this.createIndex("i5", IndexType.FUNCTIONAL, "key.status", "/portfolio1.keys key");
-    // Execute Queries with Indexes
-    for (int i = 0; i < queries.length; i++) {
-      Query q = null;
-      try {
-        q = CacheUtils.getQueryService().newQuery(queries[i]);
-        CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        QueryObserverImpl observer = new QueryObserverImpl();
-        QueryObserverHolder.setInstance(observer);
-        r[i][1] = q.execute();
-
-      } catch (Exception e) {
-        e.printStackTrace();
-        fail(q.getQueryString());
-      }
-    }
-    StructSetOrResultsSet ssOrrs = new StructSetOrResultsSet();
-    ssOrrs.CompareQueryResultsWithoutAndWithIndexes(r, queries.length, true, queries);
-  }
-
-  @Test
-  public void testOrderedResultsPartitionedRegion_Bug43514_2() throws Exception {
-    String queries[] = {
-        // Test case No. IUMR021
-        "select distinct status as st from /portfolio1 where ID > 0 order by status",
-        "select distinct p.status as st from /portfolio1 p where ID > 0 and status = 'inactive' order by p.status",
-        "select distinct p.position1.secId as st from /portfolio1 p where p.ID > 0 and p.position1.secId != 'IBM' order by p.position1.secId",
-        "select distinct  key.status as st from /portfolio1 key where key.ID > 5 order by key.status",
-        "select distinct key.ID,key.status as st from /portfolio1 key where key.status = 'inactive' order by key.status desc, key.ID",
-        "select distinct  status, ID from /portfolio1 order by status",
-        "select distinct  p.status, p.ID from /portfolio1 p order by p.status",
-        "select distinct p.position1.secId, p.ID from /portfolio1 p order by p.position1.secId",
-        "select distinct p.status, p.ID from /portfolio1 p order by p.status asc, p.ID",
-
-        "select distinct p.ID from /portfolio1 p, p.positions.values order by p.ID",
-
-        "select distinct * from /portfolio1 p, p.positions.values order by p.ID",
-        "select distinct p.iD, p.status from /portfolio1 p order by p.iD",
-        "select distinct iD, status from /portfolio1 order by iD",
-        "select distinct * from /portfolio1 p order by p.getID()",
-        "select distinct * from /portfolio1 p order by p.getP1().secId",
-        "select distinct  p.position1.secId  as st from /portfolio1 p order by p.position1.secId",
-
-        "select distinct p, pos from /portfolio1 p, p.positions.values pos order by p.ID",
-        "select distinct p, pos from /portfolio1 p, p.positions.values pos order by pos.secId",
-        "select distinct status from /portfolio1 where ID > 0 order by status",
-        "select distinct p.status as st from /portfolio1 p where ID > 0 and status = 'inactive' order by p.status",
-        "select distinct p.position1.secId as st from /portfolio1 p where p.ID > 0 and p.position1.secId != 'IBM' order by p.position1.secId"
-
-    };
-    Object r[][] = new Object[queries.length][2];
-    QueryService qs;
-    qs = CacheUtils.getQueryService();
-    Position.resetCounter();
-    // Create Regions
-    PartitionAttributesFactory paf = new PartitionAttributesFactory();
-    AttributesFactory af = new AttributesFactory();
-    af.setPartitionAttributes(paf.create());
-    Region r1 = CacheUtils.createRegion("portfolio1", af.create(), false);
-
-    for (int i = 0; i < 50; i++) {
-
-      r1.put(i + "", new Portfolio(i));
-    }
-
-    // Execute Queries without Indexes
-    for (int i = 0; i < queries.length; i++) {
-      Query q = null;
-      try {
-        q = CacheUtils.getQueryService().newQuery(queries[i]);
-        CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        r[i][0] = q.execute();
-      } catch (Exception e) {
-        e.printStackTrace();
-        fail(q.getQueryString());
-      }
-    }
-    // Create Indexes
-    this.createIndex("i1", IndexType.FUNCTIONAL, "p.status", "/portfolio1 p");
-    this.createIndex("i2", IndexType.FUNCTIONAL, "p.ID", "/portfolio1 p");
-    this.createIndex("i3", IndexType.FUNCTIONAL, "p.position1.secId", "/portfolio1 p");
-
-    // Execute Queries with Indexes
-    for (int i = 0; i < queries.length; i++) {
-      Query q = null;
-      try {
-        q = CacheUtils.getQueryService().newQuery(queries[i]);
-        CacheUtils.getLogger().info("Executing query: " + queries[i]);
-        QueryObserverImpl observer = new QueryObserverImpl();
-        QueryObserverHolder.setInstance(observer);
-        r[i][1] = q.execute();
-
-      } catch (Exception e) {
-        e.printStackTrace();
-        fail(q.getQueryString());
-      }
-    }
-    StructSetOrResultsSet ssOrrs = new StructSetOrResultsSet();
-    ssOrrs.CompareQueryResultsWithoutAndWithIndexes(r, queries.length, true, queries);
-  }
-
-
-  @Test
-  public void testOrderByWithNullValues() throws Exception {
-    // IN ORDER BY NULL values are treated as smallest. E.g For an ascending order by field
-    // its null values are reported first and then the values in ascending order.
-    String queries[] = getQueriesForOrderByWithNullValues();
-
-    Object r[][] = new Object[queries.length][2];
-    QueryService qs;
-    qs = CacheUtils.getQueryService();
-
-    // Create Regions
-    final int size = 9;
-    final int numNullValues = 3;
-    Region r1 = createRegion("portfolio1", Portfolio.class);
-    for (int i = 1; i <= size; i++) {
-      Portfolio pf = new Portfolio(i);
-      // Add numNullValues null values.
-      if (i <= numNullValues) {
-        pf.pkid = null;
-        pf.status = "a" + i;
-      }
-      r1.put(i + "", pf);
-    }
-
-    Query q = null;
-    SelectResults results = null;
-    List list = null;
-    String str = "";
-    try {
-      // Query 0 - null values are first in the order.
-      str = queries[0];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      r[0][0] = results;
-      list = results.asList();
-      for (int i = 1; i <= size; i++) {
-        Portfolio p = (Portfolio) list.get((i - 1));
-        if (i <= numNullValues) {
-          assertNull("Expected null value for pkid, p: " + p, p.pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", p.pkid);
-          if (!p.pkid.equals("" + i)) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-      // Query 1 - null values are first in the order.
-      str = queries[1];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= size; i++) {
-        Portfolio p = (Portfolio) list.get((i - 1));
-        if (i <= numNullValues) {
-          assertNull("Expected null value for pkid", p.pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", p.pkid);
-          if (!p.pkid.equals("" + i)) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-      // Query 2 - null values are last in the order.
-      str = queries[2];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= size; i++) {
-        Portfolio p = (Portfolio) list.get((i - 1));
-        if (i > (size - numNullValues)) {
-          assertNull("Expected null value for pkid", p.pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", p.pkid);
-          if (!p.pkid.equals("" + (size - (i - 1)))) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-      // Query 3 - 1 distinct null value with pkid.
-      str = queries[3];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= list.size(); i++) {
-        String pkid = (String) list.get((i - 1));
-        if (i == 1) {
-          assertNull("Expected null value for pkid", pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", pkid);
-          if (!pkid.equals("" + (numNullValues + (i - 1)))) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-      // Query 4 - 1 distinct null value with pkid.
-      str = queries[4];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= list.size(); i++) {
-        String pkid = (String) list.get((i - 1));
-        if (i == 1) {
-          assertNull("Expected null value for pkid", pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", pkid);
-          if (!pkid.equals("" + (numNullValues + (i - 1)))) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-      // Query 5 - 1 distinct null value with pkid at the end.
-      str = queries[5];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= list.size(); i++) {
-        String pkid = (String) list.get((i - 1));
-        if (i == (list.size())) {
-          assertNull("Expected null value for pkid", pkid);
-        } else {
-          assertNotNull("Expected not null value for pkid", pkid);
-          if (!pkid.equals("" + (size - (i - 1)))) {
-            fail(" Value of pkid is not in expected order.");
-          }
-        }
-      }
-
-
-      // Query 6 - ID field values should be in the same order.
-      str = queries[6];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-      for (int i = 1; i <= size; i++) {
-        int id = (Integer) ((Struct) list.get((i - 1))).getFieldValues()[0];
-        // ID should be one of 1, 2, 3 because of distinct
-        if (i <= numNullValues) {
-          if (!(id == 1 || id == 2 || id == 3)) {
-            fail(" Value of ID is not as expected " + id);
-          }
-        } else {
-          if (id != i) {
-            fail(" Value of ID is not as expected " + id);
-          }
-        }
-      }
-
-
-
-      // Query 7 - ID, pkid field values should be in the same order.
-      str = queries[7];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-
-      for (int i = 1; i <= list.size(); i++) {
-        Struct vals = (Struct) list.get((i - 1));
-        int id = ((Integer) vals.get("ID")).intValue();
-        String pkid = (String) vals.get("pkid");
-
-        if (i <= numNullValues) {
-          assertNull("Expected null value for pkid, " + pkid, pkid);
-          if (!(id == 1 || id == 2 || id == 3)) {
-            fail(" Value of ID is not as expected " + id);
-          }
-        } else {
-          if (!pkid.equals("" + i)) {
-            fail(" Value of pkid is not as expected, " + pkid);
-          }
-          if (id != i) {
-            fail(" Value of ID is not as expected, " + id);
-          }
-        }
-      }
-
-      // Query 8 - ID asc, pkid field values should be in the same order.
-      str = queries[8];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-
-      for (int i = 1; i <= list.size(); i++) {
-        Struct vals = (Struct) list.get((i - 1));
-        int id = ((Integer) vals.get("ID")).intValue();
-        String pkid = (String) vals.get("pkid");
-
-        if (i <= numNullValues) {
-          assertNull("Expected null value for pkid, " + pkid, pkid);
-          if (id != i) {
-            fail(" Value of ID is not as expected, it is: " + id + " expected :" + i);
-          }
-        } else {
-          if (!pkid.equals("" + i)) {
-            fail(" Value of pkid is not as expected, " + pkid);
-          }
-          if (id != i) {
-            fail(" Value of ID is not as expected, " + id);
-          }
-        }
-      }
-
-      // Query 9 - ID desc, pkid field values should be in the same order.
-      str = queries[9];
-      q = CacheUtils.getQueryService().newQuery(str);
-      CacheUtils.getLogger().info("Executing query: " + str);
-      results = (SelectResults) q.execute();
-      list = results.asList();
-
-      for (int i = 1; i <= list.size(); i++) {
-        Struct vals = (Struct) list.get((i - 1));
-        int id = ((Integer) vals.get("ID")).intValue();
-        String pkid = (String) vals.get("pkid");
-
-        if (i <= numNullValues) {
-          assertNull("Expected null value for pkid, " + pkid, pkid);
-          if (id != (numNullValues - (i - 1))) {
-            fail(" Value of ID is not as expected " + id);
-          }
-        } else {
-          if (!pkid.equals("" + i)) {
-            fail(" Value of pkid is not as expected, " + pkid);
-          }
-          if (id != i) {
-            fail(" Value of ID is not as expected, " + id);
-          }
-        }
-      }
-    } catch (Exception e) {
-      e.printStackTrace();
-      fail(q.getQueryString());
-    }
-  }
-
-  public String[] getQueriesForOrderByWithNullValues() {
-    // IN ORDER BY NULL values are treated as smallest. E.g For an ascending
-    // order by field
-    // its null values are reported first and then the values in ascending
-    // order.
-    String queries[] = {"SELECT  distinct * FROM /portfolio1 pf1 order by pkid", // 0 null
-                                                                                 // values are
-                                                                                 // first in the
-                                                                                 // order.
-        "SELECT  distinct * FROM /portfolio1 pf1  order by pkid asc", // 1 same
-                                                                      // as
-                                                                      // above.
-        "SELECT  distinct * FROM /portfolio1 order by pkid desc", // 2 null
-                                                                  // values are
-                                                                  // last in the
-                                                                  // order.
-        "SELECT  distinct pkid FROM /portfolio1 pf1 order by pkid", // 3 null
-                                                                    // values
-                                                                    // are first
-                                                                    // in the
-                                                                    // order.
-        "SELECT  distinct pkid FROM /portfolio1 pf1 where pkid != 'XXXX' order by pkid asc", // 4
-        "SELECT  distinct pkid FROM /portfolio1 pf1 where pkid != 'XXXX' order by pkid desc", // 5
-                                                                                              // null
-                                                                                              // values
-                                                                                              // are
-                                                                                              // last
-                                                                                              // in
-                                                                                              // the
-                                                                                              // order.
-
-        "SELECT  distinct ID, pkid FROM /portfolio1 pf1 where ID < 1000 order by pkid", // 6
-        "SELECT  distinct ID, pkid FROM /portfolio1 pf1 where ID > 0 order by pkid", // 7
-        "SELECT  distinct ID, pkid FROM /portfolio1 pf1 where ID > 0 order by pkid, ID asc", // 8
-        "SELECT  distinct ID, pkid FROM /portfolio1 pf1 where ID > 0 order by pkid, ID desc",// 9
-    };
-    return queries;
-  }
-
-  public String[] getQueriesForLimitNotAppliedIfOrderByNotUsingIndex() {
-    String queries[] = {
-        // Test case No. IUMR021
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '12' and ID > 10 order by ID desc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID > 10 order by ID asc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '13'and  ID > 10 and ID < 20 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid <'9' and ID > 10 and ID < 20 order by ID desc , pkid desc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '15' and ID >= 10 and ID <= 20 order by ID desc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and pkid <='9' and ID >= 10 and ID <= 20 order by ID asc, pkid asc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID desc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '17' and ID > 10 order by ID desc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '17' and ID > 10 order by ID asc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid < '7' and ID > 10 and ID < 20 order by ID asc, pkid asc limit 5 ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '18' and ID > 10 and ID < 20 order by ID desc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID >= 10 and ID <= 20 order by ID desc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid != '17' and ID >= 10 and ID <= 20 order by ID asc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '0' and ID != 10 order by ID asc, pkid asc limit 10",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID desc, pkid desc limit 10",
-
-
-    };
-    return queries;
-
-  }
-
-  public String[] getQueriesForMultiColOrderByWithIndexResultWithProjection() {
-    String queries[] = {
-        // Test case No. IUMR021
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 order by ID desc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 and ID < 20 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 and ID < 20 order by ID desc , pkid desc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID >= 10 and ID <= 20 order by ID desc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID >= 10 and ID <= 20 order by ID asc, pkid desc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID != 10 order by ID asc , pkid desc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID != 10 order by ID desc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 order by ID desc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 order by ID asc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 and ID < 20 order by ID asc, pkid desc limit 5 ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID > 10 and ID < 20 order by ID desc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID >= 10 and ID <= 20 order by ID desc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID >= 10 and ID <= 20 order by ID asc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID != 10 order by ID asc , pkid desc limit 10",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where ID != 10 order by ID desc, pkid desc limit 10",};
-    return queries;
-  }
-
-  public String[] getQueriesForMultiColOrderByWithMultiIndexResultProjection() {
-    String queries[] = {
-        // Test case No. IUMR021
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '12' and ID > 10 order by ID desc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID > 10 order by ID asc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '13'and  ID > 10 and ID < 20 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid <'9' and ID > 10 and ID < 20 order by ID desc , pkid desc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '15' and ID >= 10 and ID <= 20 order by ID desc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and pkid <='9' and ID >= 10 and ID <= 20 order by ID asc, pkid asc",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID asc, pkid asc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID desc, pkid desc ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '17' and ID > 10 order by ID desc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '17' and ID > 10 order by ID asc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid < '7' and ID > 10 and ID < 20 order by ID asc, pkid asc limit 5 ",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid = '18' and ID > 10 and ID < 20 order by ID desc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID >= 10 and ID <= 20 order by ID desc, pkid asc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid != '17' and ID >= 10 and ID <= 20 order by ID asc, pkid desc limit 5",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '0' and ID != 10 order by ID asc, pkid asc limit 10",
-        "SELECT  distinct ID, description, createTime, pkid FROM /portfolio1 pf1 where pkid > '1' and ID != 10 order by ID desc, pkid desc limit 10",
-
-
-    };
-    return queries;
-  }
+public class OrderByPartitionedJUnitTest extends OrderByPartitionedJUnitTestBase {
 }
diff --git a/geode-core/src/integrationTest/java/org/apache/geode/management/internal/deployment/FunctionScannerTest.java b/geode-core/src/integrationTest/java/org/apache/geode/management/internal/deployment/FunctionScannerTest.java
index ef4a25a..8555e0d 100644
--- a/geode-core/src/integrationTest/java/org/apache/geode/management/internal/deployment/FunctionScannerTest.java
+++ b/geode-core/src/integrationTest/java/org/apache/geode/management/internal/deployment/FunctionScannerTest.java
@@ -17,9 +17,6 @@ package org.apache.geode.management.internal.deployment;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.io.File;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
 import java.util.Collection;
 
 import org.junit.Before;
@@ -31,6 +28,7 @@ import org.junit.rules.TemporaryFolder;
 
 import org.apache.geode.test.compiler.JarBuilder;
 import org.apache.geode.test.junit.categories.GfshTest;
+import org.apache.geode.util.test.TestUtil;
 
 @Category({GfshTest.class})
 public class FunctionScannerTest {
@@ -112,12 +110,11 @@ public class FunctionScannerTest {
         "org.apache.geode.management.internal.deployment.AnnotatedFunction");
   }
 
-  private File loadTestResource(String fileName) throws URISyntaxException {
-    URL resourceFileURL = this.getClass().getResource(fileName);
-    assertThat(resourceFileURL).isNotNull();
+  private File loadTestResource(String fileName) {
+    String filePath = TestUtil.getResourcePath(this.getClass(), fileName);
+    assertThat(filePath).isNotNull();
 
-    URI resourceUri = resourceFileURL.toURI();
-    return new File(resourceUri);
+    return new File(filePath);
   }
 
 }
diff --git a/geode-core/src/test/java/org/apache/geode/memcached/ConnectionWithOneMinuteTimeoutFactory.java b/geode-core/src/integrationTest/java/org/apache/geode/memcached/ConnectionWithOneMinuteTimeoutFactory.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/memcached/ConnectionWithOneMinuteTimeoutFactory.java
rename to geode-core/src/integrationTest/java/org/apache/geode/memcached/ConnectionWithOneMinuteTimeoutFactory.java
diff --git a/geode-core/src/test/resources/org/apache/geode/cache30/DefaultEvictionActionRegressionTest_cache.xml b/geode-core/src/integrationTest/resources/org/apache/geode/cache30/DefaultEvictionActionRegressionTest_cache.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/cache30/DefaultEvictionActionRegressionTest_cache.xml
rename to geode-core/src/integrationTest/resources/org/apache/geode/cache30/DefaultEvictionActionRegressionTest_cache.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/jta/cachejta.xml b/geode-core/src/integrationTest/resources/org/apache/geode/internal/jta/cachejta.xml
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/jta/cachejta.xml
rename to geode-core/src/integrationTest/resources/org/apache/geode/internal/jta/cachejta.xml
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java b/geode-core/src/integrationTest/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
rename to geode-core/src/integrationTest/resources/org/apache/geode/management/internal/deployment/ExtendsFunctionAdapter.java
diff --git a/geode-core/src/test/resources/security.json b/geode-core/src/integrationTest/resources/security.json
similarity index 100%
rename from geode-core/src/test/resources/security.json
rename to geode-core/src/integrationTest/resources/security.json
diff --git a/geode-core/src/test/java/org/apache/geode/internal/logging/LoggingPerformanceTestCase.java b/geode-core/src/performanceTest/java/org/apache/geode/internal/logging/LoggingPerformanceTestCase.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/logging/LoggingPerformanceTestCase.java
rename to geode-core/src/performanceTest/java/org/apache/geode/internal/logging/LoggingPerformanceTestCase.java
diff --git a/geode-core/src/test/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser b/geode-core/src/test/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser
index 119f25b..405552f 100644
--- a/geode-core/src/test/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser
+++ b/geode-core/src/test/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser
@@ -1,5 +1,2 @@
 # org.apache.geode.internal.cache.xmlcache.CacheXmlParserJUnitTest.testGetDelegate XmlParser
 org.apache.geode.internal.cache.xmlcache.CacheXmlParserJUnitTest$MockXmlParser
-
-# Mock Extension XmlParser
-org.apache.geode.internal.cache.extension.mock.MockExtensionXmlParser
\ No newline at end of file
diff --git a/geode-core/src/test/resources/META-INF/services/org.springframework.shell.core.CommandMarker b/geode-core/src/test/resources/META-INF/services/org.springframework.shell.core.CommandMarker
index 28eb157..19ede3f 100644
--- a/geode-core/src/test/resources/META-INF/services/org.springframework.shell.core.CommandMarker
+++ b/geode-core/src/test/resources/META-INF/services/org.springframework.shell.core.CommandMarker
@@ -2,7 +2,3 @@
 org.apache.geode.management.internal.cli.CommandManagerJUnitTest$MockPluginCommand
 # Should cause ServiceConfigurationException while iterating.
 #TODO jbarrett - causes tests to be marked as failed because of exception in log org.apache.geode.management.internal.cli.CommandManagerJUnitTest$MockPluginCommandNotFound
-
-
-# Mock Extension commands
-org.apache.geode.internal.cache.extension.mock.MockExtensionCommands
diff --git a/geode-cq/build.gradle b/geode-cq/build.gradle
index bb43437..9d0b77b 100644
--- a/geode-cq/build.gradle
+++ b/geode-cq/build.gradle
@@ -17,14 +17,11 @@
 
 dependencies {
   compileOnly project(':geode-core')
-  testCompile project(':geode-core')
 
-  testCompile files(project(':geode-old-versions').sourceSets.main.output)
+  testCompile project(':geode-core')
   testCompile project(':geode-junit')
 
   integrationTestCompile project(":geode-dunit")
 
-  distributedTestCompile project(":geode-dunit")
-
   upgradeTestCompile project(":geode-dunit")
 }
diff --git a/geode-cq/src/test/java/org/apache/geode/security/FilterPostAuthorization.java b/geode-cq/src/distributedTest/java/org/apache/geode/security/FilterPostAuthorization.java
similarity index 100%
rename from geode-cq/src/test/java/org/apache/geode/security/FilterPostAuthorization.java
rename to geode-cq/src/distributedTest/java/org/apache/geode/security/FilterPostAuthorization.java
diff --git a/geode-cq/src/test/java/org/apache/geode/security/FilterPreAuthorization.java b/geode-cq/src/distributedTest/java/org/apache/geode/security/FilterPreAuthorization.java
similarity index 100%
rename from geode-cq/src/test/java/org/apache/geode/security/FilterPreAuthorization.java
rename to geode-cq/src/distributedTest/java/org/apache/geode/security/FilterPreAuthorization.java
diff --git a/geode-cq/src/test/java/org/apache/geode/security/ObjectWithAuthz.java b/geode-cq/src/distributedTest/java/org/apache/geode/security/ObjectWithAuthz.java
similarity index 100%
rename from geode-cq/src/test/java/org/apache/geode/security/ObjectWithAuthz.java
rename to geode-cq/src/distributedTest/java/org/apache/geode/security/ObjectWithAuthz.java
diff --git a/geode-cq/src/test/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-client-cache.xml b/geode-cq/src/distributedTest/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-client-cache.xml
similarity index 100%
rename from geode-cq/src/test/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-client-cache.xml
rename to geode-cq/src/distributedTest/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-client-cache.xml
diff --git a/geode-cq/src/test/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-server-cache.xml b/geode-cq/src/distributedTest/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-server-cache.xml
similarity index 100%
rename from geode-cq/src/test/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-server-cache.xml
rename to geode-cq/src/distributedTest/resources/org/apache/geode/internal/cache/tier/sockets/durablecq-server-cache.xml
diff --git a/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java b/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
index ad4beb9..17e9650 100755
--- a/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
+++ b/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
@@ -19,7 +19,7 @@ import org.junit.experimental.categories.Category;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
 
 @Category({ClientSubscriptionTest.class})
-public class AnalyzeCQSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeCQSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
   @Override
   protected String getModuleName() {
diff --git a/geode-dunit/build.gradle b/geode-dunit/build.gradle
index a13dc98..9900487 100755
--- a/geode-dunit/build.gradle
+++ b/geode-dunit/build.gradle
@@ -16,40 +16,45 @@
  */
 
 dependencies {
-    compileOnly project(':geode-core')
-    compile project(':geode-junit')
-    compile project(':geode-json')
-
-    compileOnly files("${System.getProperty('java.home')}/../lib/tools.jar")
-
-    compile 'com.jayway.jsonpath:json-path:' + project.'json-path.version'
-    compile 'org.apache.logging.log4j:log4j-api:' + project.'log4j.version'
-    compile 'org.apache.logging.log4j:log4j-core:' + project.'log4j.version'
-    compile 'commons-io:commons-io:' + project.'commons-io.version'
-    compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
-    compile ('org.springframework.shell:spring-shell:' + project.'spring-shell.version') {
-        exclude module: 'aopalliance'
-        exclude module: 'asm'
-        exclude module: 'cglib'
-        exclude module: 'guava'
-        exclude module: 'spring-aop'
-        exclude module: 'spring-context-support'
-        ext.optional = true
-    }
-    compile 'com.google.guava:guava:' + project.'guava.version'
-    compile ('com.github.stefanbirkner:system-rules:' + project.'system-rules.version') {
-        exclude module: 'junit-dep'
-    }
-
-    compile 'org.assertj:assertj-core:' + project.'assertj-core.version'
-    compile 'org.mockito:mockito-core:' + project.'mockito-core.version'
-    compile 'org.awaitility:awaitility:' + project.'awaitility.version'
-
-    compile 'eu.codearte.catch-exception:catch-exception:' + project.'catch-exception.version'
-    compile 'eu.codearte.catch-exception:catch-throwable:' + project.'catch-throwable.version'
-
-    compile('junit:junit:' + project.'junit.version') {
-        exclude module: 'hamcrest-core'
-    }
+  compileOnly project(':geode-core')
+  //compileOnly files("${System.getProperty('java.home')}/../lib/tools.jar")
+
+  compile project(':geode-junit')
+  compile project(':geode-json')
+
+  compile 'com.jayway.jsonpath:json-path:' + project.'json-path.version'
+  compile 'org.apache.logging.log4j:log4j-api:' + project.'log4j.version'
+  compile 'org.apache.logging.log4j:log4j-core:' + project.'log4j.version'
+  compile 'commons-io:commons-io:' + project.'commons-io.version'
+  compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
+  compile ('org.springframework.shell:spring-shell:' + project.'spring-shell.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'asm'
+    exclude module: 'cglib'
+    exclude module: 'guava'
+    exclude module: 'spring-aop'
+    exclude module: 'spring-context-support'
+    ext.optional = true
+  }
+  compile 'com.google.guava:guava:' + project.'guava.version'
+  compile ('com.github.stefanbirkner:system-rules:' + project.'system-rules.version') {
+    exclude module: 'junit-dep'
+  }
+
+  compile 'org.assertj:assertj-core:' + project.'assertj-core.version'
+  compile 'org.mockito:mockito-core:' + project.'mockito-core.version'
+  compile 'org.awaitility:awaitility:' + project.'awaitility.version'
+
+  compile 'eu.codearte.catch-exception:catch-exception:' + project.'catch-exception.version'
+  compile 'eu.codearte.catch-exception:catch-throwable:' + project.'catch-throwable.version'
+
+  compile('junit:junit:' + project.'junit.version') {
+    exclude module: 'hamcrest-core'
+  }
+}
+
+distributedTest {
+  // Some tests have inner tests that should be ignored
+  exclude "**/*\$*.class"
 }
 
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/AsyncInvokeCallableExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/AsyncInvokeCallableExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/AsyncInvokeCallableExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/AsyncInvokeCallableExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/AsyncInvokeRunnableExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/AsyncInvokeRunnableExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/AsyncInvokeRunnableExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/AsyncInvokeRunnableExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/CatchingUnexpectedExceptionExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/CatchingUnexpectedExceptionExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/CatchingUnexpectedExceptionExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/CatchingUnexpectedExceptionExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DistributedTestCaseExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/DistributedTestCaseExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DistributedTestCaseExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/DistributedTestCaseExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DistributedTestRuleExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/DistributedTestRuleExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DistributedTestRuleExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/DistributedTestRuleExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/FixtureOrderingExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/FixtureOrderingExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/FixtureOrderingExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/FixtureOrderingExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/InvokeRunnableExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/InvokeRunnableExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/InvokeRunnableExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/InvokeRunnableExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/LocatorPortClusterExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/LocatorPortClusterExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/LocatorPortClusterExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/LocatorPortClusterExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/ReplaceTryFinallyExampleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/ReplaceTryFinallyExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/ReplaceTryFinallyExampleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/examples/ReplaceTryFinallyExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/DUnitBlackboardDUnitTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/internal/DUnitBlackboardDUnitTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/DUnitBlackboardDUnitTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/internal/DUnitBlackboardDUnitTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/CacheRuleBuilderDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/CacheRuleBuilderDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/CacheRuleBuilderDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/CacheRuleBuilderDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/CacheRuleDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/CacheRuleDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/CacheRuleDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/CacheRuleDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/ClusterStartupRuleCanSpecifyOlderVersionsDUnitTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/ClusterStartupRuleCanSpecifyOlderVersionsDUnitTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/ClusterStartupRuleCanSpecifyOlderVersionsDUnitTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/ClusterStartupRuleCanSpecifyOlderVersionsDUnitTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/DistributedRestoreSystemPropertiesDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/DistributedRestoreSystemPropertiesDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/DistributedRestoreSystemPropertiesDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/DistributedRestoreSystemPropertiesDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/DistributedTestRuleDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/DistributedTestRuleDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/DistributedTestRuleDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/DistributedTestRuleDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitDUnitTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitDUnitTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitDUnitTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitDUnitTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java
similarity index 96%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java
index 7cdb55f..d6cab7b 100644
--- a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java
+++ b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleAwaitIntegrationTest.java
@@ -19,12 +19,12 @@ import static org.assertj.core.api.Java6Assertions.assertThatThrownBy;
 
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.List;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
 import java.util.function.Supplier;
 import java.util.function.UnaryOperator;
 
-import com.sun.tools.javac.util.List;
 import org.assertj.core.api.ThrowableAssert.ThrowingCallable;
 import org.awaitility.core.ConditionTimeoutException;
 import org.awaitility.core.Predicate;
@@ -86,13 +86,13 @@ public class MemberStarterRuleAwaitIntegrationTest {
 
   @Test
   public void waitCanPrintMoreComplexResults() throws Exception {
-    Supplier<List<String>> abcListProvider = () -> List.of("A", "B", "C");
+    Supplier<List<String>> abcListProvider = () -> Arrays.asList("A", "B", "C");
     Function<List<String>, Integer> examiner = list -> list.size();
     String description = "Awaiting until list becomes empty.";
     assertThatThrownBy(printExceptionWrapper(() -> ruleToUse.waitUntilEqual(abcListProvider,
         examiner, 0, description, 1, TimeUnit.SECONDS)))
             .isInstanceOf(ConditionTimeoutException.class)
-            .hasMessageContaining("A,B,C")
+            .hasMessageContaining("A, B, C")
             .hasMessageContaining(description);
   }
 
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleIntegrationTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleIntegrationTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleIntegrationTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleIntegrationTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/MemberStarterRuleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/SharedCountersRuleDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/SharedCountersRuleDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/SharedCountersRuleDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/SharedCountersRuleDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/SharedErrorCollectorDistributedTest.java b/geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/SharedErrorCollectorDistributedTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/rules/tests/SharedErrorCollectorDistributedTest.java
rename to geode-dunit/src/distributedTest/java/org/apache/geode/test/dunit/rules/tests/SharedErrorCollectorDistributedTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/cache/examples/CacheTestCaseExampleTest.java b/geode-dunit/src/integrationTest/java/org/apache/geode/test/dunit/cache/examples/CacheTestCaseExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/cache/examples/CacheTestCaseExampleTest.java
rename to geode-dunit/src/integrationTest/java/org/apache/geode/test/dunit/cache/examples/CacheTestCaseExampleTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/BeforeClassExampleTest.java b/geode-dunit/src/integrationTest/java/org/apache/geode/test/dunit/examples/BeforeClassExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/BeforeClassExampleTest.java
rename to geode-dunit/src/integrationTest/java/org/apache/geode/test/dunit/examples/BeforeClassExampleTest.java
diff --git a/geode-core/src/integrationTest/java/org/apache/geode/cache/query/dunit/TestObject.java b/geode-dunit/src/main/java/org/apache/geode/cache/query/dunit/TestObject.java
similarity index 100%
rename from geode-core/src/integrationTest/java/org/apache/geode/cache/query/dunit/TestObject.java
rename to geode-dunit/src/main/java/org/apache/geode/cache/query/dunit/TestObject.java
diff --git a/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java b/geode-dunit/src/main/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTestBase.java
similarity index 99%
copy from geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java
copy to geode-dunit/src/main/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTestBase.java
index 6e4b1fd..f9cfa69 100644
--- a/geode-core/src/integrationTest/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTest.java
+++ b/geode-dunit/src/main/java/org/apache/geode/cache/query/functional/OrderByPartitionedJUnitTestBase.java
@@ -45,7 +45,7 @@ import org.apache.geode.cache.query.internal.QueryObserverHolder;
 import org.apache.geode.test.junit.categories.OQLQueryTest;
 
 @Category({OQLQueryTest.class})
-public class OrderByPartitionedJUnitTest extends OrderByTestImplementation {
+public abstract class OrderByPartitionedJUnitTestBase extends OrderByTestImplementation {
 
   @Override
   public Region createRegion(String regionName, Class valueConstraint) {
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/OrderByTestImplementation.java b/geode-dunit/src/main/java/org/apache/geode/cache/query/functional/OrderByTestImplementation.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/OrderByTestImplementation.java
rename to geode-dunit/src/main/java/org/apache/geode/cache/query/functional/OrderByTestImplementation.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/security/templates/PKCSPrincipalTest.java b/geode-dunit/src/test/java/org/apache/geode/security/templates/PKCSPrincipalTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/security/templates/PKCSPrincipalTest.java
rename to geode-dunit/src/test/java/org/apache/geode/security/templates/PKCSPrincipalTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/security/templates/UsernamePrincipalTest.java b/geode-dunit/src/test/java/org/apache/geode/security/templates/UsernamePrincipalTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/security/templates/UsernamePrincipalTest.java
rename to geode-dunit/src/test/java/org/apache/geode/security/templates/UsernamePrincipalTest.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DoNotHandleUnexpectedExceptionExampleTest.java b/geode-dunit/src/test/java/org/apache/geode/test/dunit/examples/DoNotHandleUnexpectedExceptionExampleTest.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/test/dunit/examples/DoNotHandleUnexpectedExceptionExampleTest.java
rename to geode-dunit/src/test/java/org/apache/geode/test/dunit/examples/DoNotHandleUnexpectedExceptionExampleTest.java
diff --git a/geode-experimental-driver/build.gradle b/geode-experimental-driver/build.gradle
index c276261..b2a5e61 100644
--- a/geode-experimental-driver/build.gradle
+++ b/geode-experimental-driver/build.gradle
@@ -18,11 +18,15 @@
 dependencies {
     compile project(':geode-common')
     compile project(':geode-protobuf-messages')
-
     compile 'com.google.protobuf:protobuf-java:' + project.'protobuf-java.version'
+
+
     testCompile project(':geode-core')
     testCompile project(':geode-junit')
     testCompile project(':geode-protobuf')
 
+
+    integrationTestCompile project(':geode-core')
     integrationTestCompile project(":geode-dunit")
+    integrationTestCompile project(':geode-protobuf')
 }
diff --git a/geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/AllTypesJavaSerializer.java b/geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/AllTypesJavaSerializer.java
similarity index 100%
rename from geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/AllTypesJavaSerializer.java
rename to geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/AllTypesJavaSerializer.java
diff --git a/geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/IntegrationTestBase.java b/geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/IntegrationTestBase.java
similarity index 100%
rename from geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/IntegrationTestBase.java
rename to geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/IntegrationTestBase.java
diff --git a/geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/JavaSerializer.java b/geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/JavaSerializer.java
similarity index 100%
rename from geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/JavaSerializer.java
rename to geode-experimental-driver/src/integrationTest/java/org/apache/geode/experimental/driver/JavaSerializer.java
diff --git a/geode-experimental-driver/src/test/resources/META-INF/services/org.apache.geode.protocol.serialization.ValueSerializer b/geode-experimental-driver/src/integrationTest/resources/META-INF/services/org.apache.geode.protocol.serialization.ValueSerializer
similarity index 100%
rename from geode-experimental-driver/src/test/resources/META-INF/services/org.apache.geode.protocol.serialization.ValueSerializer
rename to geode-experimental-driver/src/integrationTest/resources/META-INF/services/org.apache.geode.protocol.serialization.ValueSerializer
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusclient.keystore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/bogusclient.keystore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusclient.keystore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/bogusclient.keystore
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusserver.keystore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/bogusserver.keystore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusserver.keystore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/bogusserver.keystore
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/cacheserver.keystore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/cacheserver.keystore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/cacheserver.keystore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/cacheserver.keystore
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/cacheserver.truststore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/cacheserver.truststore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/cacheserver.truststore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/cacheserver.truststore
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/client.keystore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/client.keystore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/client.keystore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/client.keystore
diff --git a/geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/client.truststore b/geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/client.truststore
similarity index 100%
rename from geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/client.truststore
rename to geode-experimental-driver/src/integrationTest/resources/org/apache/geode/experimental/driver/client.truststore
diff --git a/geode-json/build.gradle b/geode-json/build.gradle
index 722244a..ae6f28c 100644
--- a/geode-json/build.gradle
+++ b/geode-json/build.gradle
@@ -14,7 +14,3 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
-dependencies {
-    testCompile project(':geode-junit')
-}
\ No newline at end of file
diff --git a/geode-junit/build.gradle b/geode-junit/build.gradle
index 4b3c3a2..1a42918 100755
--- a/geode-junit/build.gradle
+++ b/geode-junit/build.gradle
@@ -22,8 +22,6 @@ dependencies {
     exclude module: 'junit-dep'
   }
   compile 'com.jayway.jsonpath:json-path:' + project.'json-path.version'
-  testCompile 'commons-lang:commons-lang:' + project.'commons-lang.version'
-  testCompile 'com.google.guava:guava:' + project.'guava.version'
   compile 'org.assertj:assertj-core:' + project.'assertj-core.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
@@ -32,12 +30,12 @@ dependencies {
   compile 'org.awaitility:awaitility:' + project.'awaitility.version'
   compile 'org.apache.logging.log4j:log4j-api:' + project.'log4j.version'
   compile 'org.apache.logging.log4j:log4j-core:' + project.'log4j.version'
-
   compile('junit:junit:' + project.'junit.version') {
     exclude module: 'hamcrest-core'
   }
   compile 'org.hamcrest:hamcrest-all:' + project.'hamcrest-all.version'
-  compile project(":geode-old-versions")
+
+  runtime project(":geode-old-versions")
 }
 
 test {
diff --git a/geode-junit/src/test/resources/org/apache/geode/test/compiler/AbstractClass.java b/geode-junit/src/integrationTest/resources/org/apache/geode/test/compiler/AbstractClass.java
similarity index 100%
rename from geode-junit/src/test/resources/org/apache/geode/test/compiler/AbstractClass.java
rename to geode-junit/src/integrationTest/resources/org/apache/geode/test/compiler/AbstractClass.java
diff --git a/geode-junit/src/test/resources/org/apache/geode/test/compiler/ConcreteClass.java b/geode-junit/src/integrationTest/resources/org/apache/geode/test/compiler/ConcreteClass.java
similarity index 100%
rename from geode-junit/src/test/resources/org/apache/geode/test/compiler/ConcreteClass.java
rename to geode-junit/src/integrationTest/resources/org/apache/geode/test/compiler/ConcreteClass.java
diff --git a/geode-core/src/test/java/org/apache/geode/ExpirationDetector.java b/geode-junit/src/main/java/org/apache/geode/ExpirationDetector.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/ExpirationDetector.java
rename to geode-junit/src/main/java/org/apache/geode/ExpirationDetector.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/Utils.java b/geode-junit/src/main/java/org/apache/geode/cache/query/Utils.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/Utils.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/Utils.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/GroupByTestImpl.java b/geode-junit/src/main/java/org/apache/geode/cache/query/functional/GroupByTestImpl.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/GroupByTestImpl.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/functional/GroupByTestImpl.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/GroupByTestInterface.java b/geode-junit/src/main/java/org/apache/geode/cache/query/functional/GroupByTestInterface.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/GroupByTestInterface.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/functional/GroupByTestInterface.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/NonDistinctOrderByTestImplementation.java b/geode-junit/src/main/java/org/apache/geode/cache/query/functional/NonDistinctOrderByTestImplementation.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/NonDistinctOrderByTestImplementation.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/functional/NonDistinctOrderByTestImplementation.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/PdxGroupByTestImpl.java b/geode-junit/src/main/java/org/apache/geode/cache/query/functional/PdxGroupByTestImpl.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/PdxGroupByTestImpl.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/functional/PdxGroupByTestImpl.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/functional/StructSetOrResultsSet.java b/geode-junit/src/main/java/org/apache/geode/cache/query/functional/StructSetOrResultsSet.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/functional/StructSetOrResultsSet.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/functional/StructSetOrResultsSet.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/query/transaction/Person.java b/geode-junit/src/main/java/org/apache/geode/cache/query/transaction/Person.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/query/transaction/Person.java
rename to geode-junit/src/main/java/org/apache/geode/cache/query/transaction/Person.java
diff --git a/geode-core/src/test/java/org/apache/geode/cache/snapshot/RegionGenerator.java b/geode-junit/src/main/java/org/apache/geode/cache/snapshot/RegionGenerator.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/cache/snapshot/RegionGenerator.java
rename to geode-junit/src/main/java/org/apache/geode/cache/snapshot/RegionGenerator.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
similarity index 99%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
index 117d680..388cddf 100644
--- a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTest.java
+++ b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
@@ -69,7 +69,7 @@ import org.apache.geode.pdx.internal.TypeRegistry;
 import org.apache.geode.test.junit.categories.SerializationTest;
 
 @Category({SerializationTest.class})
-public class AnalyzeSerializablesJUnitTest {
+public abstract class AnalyzeSerializablesJUnitTestBase {
 
   private static final String NEW_LINE = System.getProperty("line.separator");
 
@@ -146,9 +146,7 @@ public class AnalyzeSerializablesJUnitTest {
   /**
    * Override only this one method in sub-classes
    */
-  protected String getModuleName() {
-    return "geode-core";
-  }
+  protected abstract String getModuleName();
 
   @Test
   public void testDataSerializables() throws Exception {
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethodDetails.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethodDetails.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethodDetails.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethodDetails.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethods.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethods.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethods.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndMethods.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariableDetails.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariableDetails.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariableDetails.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariableDetails.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariables.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariables.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariables.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/ClassAndVariables.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/CompiledClassUtils.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/CompiledClassUtils.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/CompiledClassUtils.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/CompiledClassUtils.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledAttribute.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledAttribute.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledAttribute.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledAttribute.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledClass.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledClass.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledClass.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledClass.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledCode.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledCode.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledCode.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledCode.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledField.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledField.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledField.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledField.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledMethod.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledMethod.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledMethod.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledMethod.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/Cp.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/Cp.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/Cp.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/Cp.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpClass.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpClass.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpClass.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpClass.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpDouble.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpDouble.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpDouble.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpDouble.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFieldref.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFieldref.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFieldref.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFieldref.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFloat.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFloat.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFloat.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFloat.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInteger.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInteger.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInteger.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInteger.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInterfaceMethodref.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInterfaceMethodref.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInterfaceMethodref.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInterfaceMethodref.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInvokeDynamic.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInvokeDynamic.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInvokeDynamic.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInvokeDynamic.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpLong.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpLong.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpLong.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpLong.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodHandle.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodHandle.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodHandle.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodHandle.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodType.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodType.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodType.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodType.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodref.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodref.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodref.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpMethodref.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpNameAndType.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpNameAndType.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpNameAndType.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpNameAndType.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpString.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpString.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpString.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpString.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpUtf8.java b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpUtf8.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpUtf8.java
rename to geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpUtf8.java
diff --git a/geode-dunit/src/main/java/org/apache/geode/internal/AvailablePortHelper.java b/geode-junit/src/main/java/org/apache/geode/internal/AvailablePortHelper.java
similarity index 100%
rename from geode-dunit/src/main/java/org/apache/geode/internal/AvailablePortHelper.java
rename to geode-junit/src/main/java/org/apache/geode/internal/AvailablePortHelper.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionHelperFactory.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionHelperFactory.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionHelperFactory.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionHelperFactory.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionProperties.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionProperties.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionProperties.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionProperties.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionTestingBase.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionTestingBase.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/DiskRegionTestingBase.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/DiskRegionTestingBase.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionTestHelper.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/PartitionedRegionTestHelper.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionTestHelper.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/PartitionedRegionTestHelper.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/SnapshotTestUtil.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/SnapshotTestUtil.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/SnapshotTestUtil.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/SnapshotTestUtil.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/UnitTestValueHolder.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/UnitTestValueHolder.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/UnitTestValueHolder.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/UnitTestValueHolder.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/control/TestMemoryThresholdListener.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/control/TestMemoryThresholdListener.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/control/TestMemoryThresholdListener.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/control/TestMemoryThresholdListener.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/ConflatableObject.java b/geode-junit/src/main/java/org/apache/geode/internal/cache/ha/ConflatableObject.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/cache/ha/ConflatableObject.java
rename to geode-junit/src/main/java/org/apache/geode/internal/cache/ha/ConflatableObject.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/jta/CacheUtils.java b/geode-junit/src/main/java/org/apache/geode/internal/jta/CacheUtils.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/jta/CacheUtils.java
rename to geode-junit/src/main/java/org/apache/geode/internal/jta/CacheUtils.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/jta/JTAUtils.java b/geode-junit/src/main/java/org/apache/geode/internal/jta/JTAUtils.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/jta/JTAUtils.java
rename to geode-junit/src/main/java/org/apache/geode/internal/jta/JTAUtils.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/jta/SyncImpl.java b/geode-junit/src/main/java/org/apache/geode/internal/jta/SyncImpl.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/jta/SyncImpl.java
rename to geode-junit/src/main/java/org/apache/geode/internal/jta/SyncImpl.java
diff --git a/geode-core/src/test/java/org/apache/geode/internal/logging/TestLogWriterFactory.java b/geode-junit/src/main/java/org/apache/geode/internal/logging/TestLogWriterFactory.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/internal/logging/TestLogWriterFactory.java
rename to geode-junit/src/main/java/org/apache/geode/internal/logging/TestLogWriterFactory.java
diff --git a/geode-core/src/test/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java b/geode-junit/src/main/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
rename to geode-junit/src/main/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
diff --git a/geode-core/src/test/java/org/apache/geode/security/SpySecurityManager.java b/geode-junit/src/main/java/org/apache/geode/security/SpySecurityManager.java
similarity index 100%
rename from geode-core/src/test/java/org/apache/geode/security/SpySecurityManager.java
rename to geode-junit/src/main/java/org/apache/geode/security/SpySecurityManager.java
diff --git a/geode-core/src/test/java/parReg/query/unittest/NewPortfolio.java b/geode-junit/src/main/java/parReg/query/unittest/NewPortfolio.java
similarity index 100%
rename from geode-core/src/test/java/parReg/query/unittest/NewPortfolio.java
rename to geode-junit/src/main/java/parReg/query/unittest/NewPortfolio.java
diff --git a/geode-core/src/test/java/parReg/query/unittest/Position.java b/geode-junit/src/main/java/parReg/query/unittest/Position.java
similarity index 100%
rename from geode-core/src/test/java/parReg/query/unittest/Position.java
rename to geode-junit/src/main/java/parReg/query/unittest/Position.java
diff --git a/geode-core/src/test/java/util/TestException.java b/geode-junit/src/main/java/util/TestException.java
similarity index 100%
rename from geode-core/src/test/java/util/TestException.java
rename to geode-junit/src/main/java/util/TestException.java
diff --git a/geode-junit/src/main/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser b/geode-junit/src/main/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser
new file mode 100644
index 0000000..4b76d23
--- /dev/null
+++ b/geode-junit/src/main/resources/META-INF/services/org.apache.geode.internal.cache.xmlcache.XmlParser
@@ -0,0 +1,2 @@
+# Mock Extension XmlParser
+org.apache.geode.internal.cache.extension.mock.MockExtensionXmlParser
\ No newline at end of file
diff --git a/geode-junit/src/main/resources/META-INF/services/org.springframework.shell.core.CommandMarker b/geode-junit/src/main/resources/META-INF/services/org.springframework.shell.core.CommandMarker
new file mode 100644
index 0000000..61ccb44
--- /dev/null
+++ b/geode-junit/src/main/resources/META-INF/services/org.springframework.shell.core.CommandMarker
@@ -0,0 +1,2 @@
+# Mock Extension commands
+org.apache.geode.internal.cache.extension.mock.MockExtensionCommands
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/net/multiKey.jks b/geode-junit/src/main/resources/org/apache/geode/internal/net/multiKey.jks
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/net/multiKey.jks
rename to geode-junit/src/main/resources/org/apache/geode/internal/net/multiKey.jks
diff --git a/geode-core/src/test/resources/org/apache/geode/internal/net/multiKeyTrust.jks b/geode-junit/src/main/resources/org/apache/geode/internal/net/multiKeyTrust.jks
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/internal/net/multiKeyTrust.jks
rename to geode-junit/src/main/resources/org/apache/geode/internal/net/multiKeyTrust.jks
diff --git a/geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ImplementsFunction.java b/geode-junit/src/main/resources/org/apache/geode/management/internal/deployment/ImplementsFunction.java
similarity index 100%
rename from geode-core/src/test/resources/org/apache/geode/management/internal/deployment/ImplementsFunction.java
rename to geode-junit/src/main/resources/org/apache/geode/management/internal/deployment/ImplementsFunction.java
diff --git a/geode-lucene/build.gradle b/geode-lucene/build.gradle
index 0325041..47ac3a7 100644
--- a/geode-lucene/build.gradle
+++ b/geode-lucene/build.gradle
@@ -18,31 +18,36 @@
 dependencies {
     compile project(':geode-core')
     compile project(':geode-common')
-
     compile 'org.apache.lucene:lucene-analyzers-common:' + project.'lucene.version'
-    compile 'org.apache.lucene:lucene-core:' + project.'lucene.version'
-    compile 'org.apache.lucene:lucene-queries:' + project.'lucene.version'
-    compile ('org.apache.lucene:lucene-analyzers-phonetic:' + project.'lucene.version')
     compile ('org.apache.lucene:lucene-queryparser:' + project.'lucene.version') {
       exclude module: 'lucene-sandbox'
     }
 
-    testCompile project(':geode-junit')
+    runtime 'org.apache.lucene:lucene-analyzers-phonetic:' + project.'lucene.version'
 
-    //Lucene test framework.
+    testCompile project(':geode-junit')
     testCompile 'org.apache.lucene:lucene-test-framework:' + project.'lucene.version'
-    testCompile 'org.apache.lucene:lucene-codecs:' + project.'lucene.version'
-    testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
-    testCompile 'org.apache.lucene:lucene-analyzers-phonetic:' + project.'lucene.version'
     testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
 
-    testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
     integrationTestCompile project(":geode-dunit")
+    integrationTestCompile 'org.apache.lucene:lucene-analyzers-phonetic:' + project.'lucene.version'
+    integrationTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+    // TODO fix dependency on shared classes
+    integrationTestCompile sourceSets.test.output
+
+
+    distributedTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+    // TODO fix dependency on shared classes
+    distributedTestCompile sourceSets.test.output
 
-    distributedTestCompile project(":geode-dunit")
 
     upgradeTestCompile project(":geode-dunit")
+
+
+    performanceTestCompile project(":geode-junit")
+    // TODO fix dependency on shared classes
+    performanceTestCompile sourceSets.test.output
 }
 
 //The lucene integration tests don't have any issues that requiring forking
diff --git a/geode-lucene/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeLuceneSerializablesJUnitTest.java b/geode-lucene/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeLuceneSerializablesJUnitTest.java
index a8b65bb..9a5fd6c 100644
--- a/geode-lucene/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeLuceneSerializablesJUnitTest.java
+++ b/geode-lucene/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeLuceneSerializablesJUnitTest.java
@@ -20,7 +20,7 @@ import org.apache.geode.test.junit.categories.LuceneTest;
 
 
 @Category({LuceneTest.class})
-public class AnalyzeLuceneSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeLuceneSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
   @Override
   protected String getModuleName() {
diff --git a/geode-old-client-support/build.gradle b/geode-old-client-support/build.gradle
index 86bdaa3..325bf8e 100644
--- a/geode-old-client-support/build.gradle
+++ b/geode-old-client-support/build.gradle
@@ -17,11 +17,4 @@
 
 dependencies {
     compile project(':geode-core')
-    compile project(':geode-common')
-
-    testCompile project(':geode-junit')
-
-    testCompile files(project(':geode-old-versions').sourceSets.main.output)
-
-    distributedTestCompile project(":geode-dunit")
 }
diff --git a/geode-protobuf-messages/build.gradle b/geode-protobuf-messages/build.gradle
index ff04de4..3c65a58 100644
--- a/geode-protobuf-messages/build.gradle
+++ b/geode-protobuf-messages/build.gradle
@@ -46,6 +46,7 @@ sourceSets {
         }
     }
 }
+
 // let IntelliJ know where the generated sources are.
 idea {
     module {
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index 6202fc1..33d57fa 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -17,19 +17,18 @@
 
 dependencies {
     compileOnly project(':geode-core')
-    testCompile project(':geode-core')
     compile project(':geode-protobuf-messages')
+    compile 'com.google.protobuf:protobuf-java:' + project.'protobuf-java.version'
 
-    testCompile project(':geode-junit')
 
-    testCompile 'org.powermock:powermock-core:' + project.'powermock.version'
-    testCompile 'org.powermock:powermock-module-junit4:' + project.'powermock.version'
-    testCompile 'org.powermock:powermock-api-mockito:' + project.'powermock.version'
+    testCompile project(':geode-core')
+    testCompile project(':geode-junit')
 
-    compile 'com.google.protobuf:protobuf-java:' + project.'protobuf-java.version'
-    testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
     integrationTestCompile project(":geode-dunit")
+    // TODO remove common source dependency
+    integrationTestCompile sourceSets.test.output
 
-    distributedTestCompile project(":geode-dunit")
+    // TODO remove common source dependency
+    distributedTestCompile sourceSets.test.output
 }
diff --git a/geode-pulse/build.gradle b/geode-pulse/build.gradle
index 9faefba..5f82187 100755
--- a/geode-pulse/build.gradle
+++ b/geode-pulse/build.gradle
@@ -66,23 +66,31 @@ dependencies {
   providedCompile 'commons-logging:commons-logging:' + project.'commons-logging.version'
 
   compileOnly 'org.mortbay.jetty:servlet-api:' + project.'mortbay-jetty-servlet-api.version'
-  testCompile 'org.mortbay.jetty:servlet-api:' + project.'mortbay-jetty-servlet-api.version'
-  compileOnly 'com.google.guava:guava:' + project.'guava.version'
-  testCompile 'com.google.guava:guava:' + project.'guava.version'
+
 
   testCompile project(':geode-junit')
   testCompile project(':geode-core')
-  testCompile files(project(':geode-core').sourceSets.test.output)
-
-  testCompile 'org.seleniumhq.selenium:selenium-api:' + project.'selenium.version'
-  testCompile 'org.seleniumhq.selenium:selenium-chrome-driver:' + project.'selenium.version'
-  testCompile 'org.seleniumhq.selenium:selenium-support:' + project.'selenium.version'
   testCompile 'org.springframework:spring-test:' + project.'springframework.version'
-  testCompile 'com.tdunning:json:' + project.'open-json.version'
 
-  testRuntime 'com.google.code.gson:gson:' + project.'google-gson.version'
-  testRuntime 'org.apache.commons:commons-exec:' + project.'commons-exec.version'
-  testRuntime 'com.jayway.jsonpath:json-path:' + project.'json-path.version'
+
+  integrationTestCompile project(':geode-junit')
+  integrationTestCompile project(':geode-core')
+  integrationTestCompile 'org.springframework:spring-test:' + project.'springframework.version'
+
+  // TODO remove dependency on test sourceSet
+  integrationTestRuntime sourceSets.test.output
+
+
+  uiTestCompile project(':geode-junit')
+  uiTestCompile project(':geode-json')
+  uiTestCompile 'org.seleniumhq.selenium:selenium-api:' + project.'selenium.version'
+  uiTestCompile 'org.seleniumhq.selenium:selenium-remote-driver:' + project.'selenium.version'
+  uiTestCompile 'org.seleniumhq.selenium:selenium-support:' + project.'selenium.version'
+  uiTestCompile 'org.seleniumhq.selenium:selenium-chrome-driver:' + project.'selenium.version'
+  // TODO remove dependency on test sourceSet
+  uiTestCompile sourceSets.test.output
+
+  uiTestRuntime project(':geode-core')
 }
 
 def generatedResources = "$buildDir/generated-resources/main"
diff --git a/geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/rules/ScreenshotOnFailureRule.java b/geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/rules/ScreenshotOnFailureRule.java
similarity index 100%
rename from geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/rules/ScreenshotOnFailureRule.java
rename to geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/rules/ScreenshotOnFailureRule.java
diff --git a/geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/rules/WebDriverRule.java b/geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/rules/WebDriverRule.java
similarity index 100%
rename from geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/rules/WebDriverRule.java
rename to geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/rules/WebDriverRule.java
diff --git a/geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseBase.java b/geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseBase.java
similarity index 100%
rename from geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseBase.java
rename to geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseBase.java
diff --git a/geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseTestConstants.java b/geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseTestConstants.java
similarity index 100%
rename from geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseTestConstants.java
rename to geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseTestConstants.java
diff --git a/geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseTestUtils.java b/geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseTestUtils.java
similarity index 100%
rename from geode-pulse/src/test/java/org/apache/geode/tools/pulse/tests/ui/PulseTestUtils.java
rename to geode-pulse/src/uiTest/java/org/apache/geode/tools/pulse/tests/ui/PulseTestUtils.java
diff --git a/geode-rebalancer/build.gradle b/geode-rebalancer/build.gradle
index 72d9319..3e8cd77 100644
--- a/geode-rebalancer/build.gradle
+++ b/geode-rebalancer/build.gradle
@@ -17,16 +17,17 @@
 
 dependencies {
   compileOnly project(':geode-common')
-  testCompile project(':geode-common')
   compileOnly project(':geode-core')
-  testCompile project(':geode-core')
 
   compile ('org.springframework:spring-context:' + project.'springframework.version') {
     exclude module: 'spring-beans'
     exclude module: 'spring-expression'
     exclude module: 'spring-aop'
   }
-  testCompile project(':geode-junit')
 
-  integrationTestCompile project(":geode-dunit")
+  testCompile project(':geode-core')
+
+  integrationTestCompile 'org.awaitility:awaitility:' + project.'awaitility.version'
+  // Only needed for category Flaky by Gradle
+  integrationTestRuntime project(':geode-junit')
 }
diff --git a/geode-rebalancer/src/integrationTest/java/org/apache/geode/cache/util/AutoBalancerJUnitTest.java b/geode-rebalancer/src/test/java/org/apache/geode/cache/util/AutoBalancerJUnitTest.java
similarity index 100%
rename from geode-rebalancer/src/integrationTest/java/org/apache/geode/cache/util/AutoBalancerJUnitTest.java
rename to geode-rebalancer/src/test/java/org/apache/geode/cache/util/AutoBalancerJUnitTest.java
diff --git a/geode-wan/build.gradle b/geode-wan/build.gradle
index 1e901fb..1d325ff 100644
--- a/geode-wan/build.gradle
+++ b/geode-wan/build.gradle
@@ -17,14 +17,17 @@
 
 dependencies {
   compileOnly project(':geode-core')
-  testCompile project(':geode-core')
 
+
+  testCompile project(':geode-core')
   testCompile project(':geode-junit')
-  testCompile files(project(':geode-old-versions').sourceSets.main.output)
 
-  integrationTestCompile project(":geode-dunit")
 
-  distributedTestCompile project(":geode-dunit")
+  integrationTestCompile project(":geode-junit")
+
+
+  distributedTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+
 
   upgradeTestCompile project(":geode-dunit")
 }
diff --git a/geode-wan/src/test/resources/org/apache/geode/internal/cache/wan/misc/NewWanAuthenticationDUnitTest.testWanSecurityManagerWithInvalidCredentials.security.json b/geode-wan/src/distributedTest/resources/org/apache/geode/internal/cache/wan/misc/NewWanAuthenticationDUnitTest.testWanSecurityManagerWithInvalidCredentials.security.json
similarity index 100%
rename from geode-wan/src/test/resources/org/apache/geode/internal/cache/wan/misc/NewWanAuthenticationDUnitTest.testWanSecurityManagerWithInvalidCredentials.security.json
rename to geode-wan/src/distributedTest/resources/org/apache/geode/internal/cache/wan/misc/NewWanAuthenticationDUnitTest.testWanSecurityManagerWithInvalidCredentials.security.json
diff --git a/geode-wan/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWANSerializablesJUnitTest.java b/geode-wan/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWANSerializablesJUnitTest.java
index 1ce63b6..66d3a15 100644
--- a/geode-wan/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWANSerializablesJUnitTest.java
+++ b/geode-wan/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWANSerializablesJUnitTest.java
@@ -20,7 +20,7 @@ import org.apache.geode.test.junit.categories.WanTest;
 
 
 @Category({WanTest.class})
-public class AnalyzeWANSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeWANSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
   @Override
   protected String getModuleName() {
diff --git a/geode-wan/src/test/java/org/apache/geode/internal/cache/wan/parallel/BatchRemovalThreadHelper.java b/geode-wan/src/upgradeTest/java/org/apache/geode/internal/cache/wan/parallel/BatchRemovalThreadHelper.java
similarity index 100%
rename from geode-wan/src/test/java/org/apache/geode/internal/cache/wan/parallel/BatchRemovalThreadHelper.java
rename to geode-wan/src/upgradeTest/java/org/apache/geode/internal/cache/wan/parallel/BatchRemovalThreadHelper.java
diff --git a/geode-web-api/build.gradle b/geode-web-api/build.gradle
index ae84ffe..0a8f722 100755
--- a/geode-web-api/build.gradle
+++ b/geode-web-api/build.gradle
@@ -19,6 +19,9 @@ apply plugin: 'war'
 
 dependencies {
 
+  compileOnly project(':geode-core')
+  compileOnly 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
+
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
   compile('commons-fileupload:commons-fileupload:' + project.'commons-fileupload.version') {
     exclude module: 'commons-io'
@@ -56,16 +59,13 @@ dependencies {
     exclude module: 'spring-beans'
   }
 
-  testCompile project(':geode-junit')
 
-  compileOnly 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  testCompile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  compileOnly project(':geode-core')
+  testCompile project(':geode-junit')
   testCompile project(':geode-core')
+  testCompile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
 
-  integrationTestCompile project(":geode-dunit")
 
-  distributedTestCompile project(":geode-dunit")
+  integrationTestCompile project(":geode-junit")
 }
 
 war {
diff --git a/geode-web-api/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWebApiSerializablesJUnitTest.java b/geode-web-api/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWebApiSerializablesJUnitTest.java
index 8ff10fb..be4220b 100644
--- a/geode-web-api/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWebApiSerializablesJUnitTest.java
+++ b/geode-web-api/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeWebApiSerializablesJUnitTest.java
@@ -19,7 +19,7 @@ import org.junit.experimental.categories.Category;
 import org.apache.geode.test.junit.categories.RestAPITest;
 
 @Category({RestAPITest.class})
-public class AnalyzeWebApiSerializablesJUnitTest extends AnalyzeSerializablesJUnitTest {
+public class AnalyzeWebApiSerializablesJUnitTest extends AnalyzeSerializablesJUnitTestBase {
 
   @Override
   protected String getModuleName() {
diff --git a/geode-web/build.gradle b/geode-web/build.gradle
index 5f3790b..abd35be 100755
--- a/geode-web/build.gradle
+++ b/geode-web/build.gradle
@@ -18,7 +18,10 @@
 apply plugin: 'war'
 
 dependencies {
-  runtime('org.springframework:spring-aspects:' + project.'springframework.version') {
+  compileOnly 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
+  compileOnly project(path: ':geode-core', configuration: 'classesOutput')
+
+  runtime ('org.springframework:spring-aspects:' + project.'springframework.version') {
     exclude module: 'aspectjweaver'
     exclude module: 'aopalliance'
     exclude module: 'spring-core'
@@ -37,36 +40,38 @@ dependencies {
     exclude module: 'commons-io'
   }
 
-  testCompile 'org.springframework:spring-test:' + project.'springframework.version'
 
-  testCompile('org.springframework:spring-webmvc:' + project.'springframework.version') {
+  testCompile project(':geode-core')
+  // have to use output since we exclude the dependent classes from jar :(
+  testCompile project(path: ':geode-core', configuration: 'classesOutput')
+  testCompile 'org.springframework:spring-test:' + project.'springframework.version'
+  testCompile ('org.springframework:spring-webmvc:' + project.'springframework.version') {
     exclude module: 'aopalliance'
     exclude module: 'spring-aop'
   }
 
-  compileOnly 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  testCompile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
 
-  // have to use output since we exclude the dependent classes from jar :(
-  compileOnly project(path: ':geode-core', configuration: 'classesOutput')
-  testCompile project(path: ':geode-core', configuration: 'classesOutput')
+  integrationTestCompile project(":geode-dunit")
+  // TODO remove dependency on sources from other test modules
+  integrationTestCompile files(project(':geode-core').sourceSets.integrationTest.output)
 
-  testCompile project(':geode-core')
-  testCompile project(':geode-junit')
-  testRuntime project(':geode-common')
+  integrationTestRuntime files(war.destinationDir)
+  integrationTestRuntime ('org.springframework:spring-webmvc:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-aop'
+  }
 
-  testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
-  testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
-  testCompile 'com.pholser:junit-quickcheck-guava:' + project.'junit-quickcheck.version'
 
-  testRuntime files(war.destinationDir)
-  testCompile files(project(':geode-old-versions').sourceSets.main.output)
+  distributedTestCompile 'pl.pragmatists:JUnitParams:' + project.'JUnitParams.version'
+  // TODO remove dependency on sources from other test modules
+  distributedTestCompile files(project(':geode-core').sourceSets.distributedTest.output)
 
-  integrationTestCompile project(":geode-dunit")
-  integrationTestCompile files(project(':geode-core').sourceSets.integrationTest.output)
+  distributedTestRuntime files(war.destinationDir)
+  distributedTestRuntime ('org.springframework:spring-webmvc:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-aop'
+  }
 
-  distributedTestCompile project(":geode-dunit")
-  distributedTestCompile files(project(':geode-core').sourceSets.distributedTest.output)
 
   upgradeTestCompile project(":geode-dunit")
 }
@@ -90,4 +95,3 @@ war {
   classpath configurations.runtime
   classpath project(':geode-core').webJar.archivePath
 }
-
diff --git a/gradle/test.gradle b/gradle/test.gradle
index 378ea6a..6def25a 100644
--- a/gradle/test.gradle
+++ b/gradle/test.gradle
@@ -88,37 +88,44 @@ subprojects {
   apply plugin: 'nebula.facet'
   facets {
     integrationTest {
-      parentSourceSet = 'test'
       testTaskName = 'integrationTest'
       includeInCheckLifecycle = false
     }
     distributedTest {
-      parentSourceSet = 'test'
       testTaskName = 'distributedTest'
       includeInCheckLifecycle = false
     }
     performanceTest {
-      parentSourceSet = 'test'
       testTaskName = 'performanceTest'
       includeInCheckLifecycle = false
     }
     acceptanceTest {
-      parentSourceSet = 'test'
       testTaskName = 'acceptanceTest'
       includeInCheckLifecycle = false
     }
     uiTest {
-      parentSourceSet = 'test'
       testTaskName = 'uiTest'
       includeInCheckLifecycle = false
     }
     upgradeTest {
-      parentSourceSet = 'test'
       testTaskName = 'upgradeTest'
       includeInCheckLifecycle = false
     }
   }
 
+  dependencies {
+    integrationTestCompile 'org.jmock:jmock-junit4:' + project.'jmock.version'
+    integrationTestCompile 'org.jmock:jmock-legacy:' + project.'jmock.version'
+
+    integrationTestCompile 'org.mockito:mockito-core:' + project.'mockito-core.version'
+
+    integrationTestCompile 'org.powermock:powermock-core:' + project.'powermock.version'
+    integrationTestCompile 'org.powermock:powermock-module-junit4:' + project.'powermock.version'
+    integrationTestCompile 'org.powermock:powermock-api-mockito2:' + project.'powermock.version'
+
+    distributedTestCompile project(":geode-dunit")
+  }
+
   integrationTest {
     useJUnit {
       if(project.hasProperty("testCategory")) {