Sounds good! I'll be offline next week but available to join in on this or anything else after that.
On Fri, Aug 10, 2018 at 12:14 PM, Jacob Barrett <jbarr...@pivotal.io> wrote: > I think we are on the same page but maybe disagree on some details. I’m > more than happy to go further in refactoring this testing mess into > additional modules. We can even have a more clear outline of what goes in > each test module. > > The current effort to fix inter project test dependencies is not going to > tackle that directly. This is an iterative approach to cleaning up things > that should never been allowed to happen in the first place. Be patient and > we will get to a good clean end state. > > -Jake > > > > On Aug 10, 2018, at 9:37 AM, Kirk Lund <kl...@apache.org> wrote: > > > > In my opinion geode-junit and geode-dunit should be treated as testing > > frameworks that users can use to build better geode tests with. Think > JUnit > > or Mockito here. We have some valuable rules and dunit is valuable > > framework for more than building geode. We've been talking about > providing > > this to users for years. That's why I consider them to be more than just > > local tests within geode. I'm sorry if this doesn't match with your > > expectation but I assure that I've been working towards this goal for > years > > and I don't plan to give up on this goal. > > > > Now, here's another option for you: introduce yet another module > geode-test > > which is NOT published and is only used for tests local within the geode > > code base. > > > > I disagree with publishing non-framework code in either geode-junit or > > geode-dunit and I want to make these 100% useful and well-organized for > > users. I prefer to either duplicate code such as MyCacheListener across > the > > tests that need them or grouping them in a non-published geode-test > module. > > > >> On Fri, Aug 10, 2018 at 8:36 AM, Jacob Barrett <jbarr...@pivotal.io> > wrote: > >> > >> I am not sure why you think geode-junit and geode-dunit are production > jars > >> and should be treated as such. They are test framework jars in the same > >> vein as org.springframework:spring-test or > >> org.apache.lucene:lucene-test-framework. The should contain shared > class > >> for producing tests against the geode product. They could certainly use > >> some refinement. I would suggest we create a geode-test main module with > >> sub modules for unit, integration, distributed and upgrade style test > >> frameworks. I would also create sub-modules for common test domain > objects > >> that main not be as beneficial to the consumers downstream but are > shared > >> between primary modules in our projects. > >> > >> Thanks for finding the tests that were meant to test the framework. I > have > >> refactored them into the appropriate test sources sets. > >> > >> More inline below: > >> > >>> On Thu, Aug 9, 2018 at 3:56 PM Kirk Lund <kl...@apache.org> wrote: > >>> > >>> Here are the tests that are no longer running because they've been > moved > >> to > >>> src/main (was this reviewed?): > >>> > >>> <klund@Kirks-MacBook-Pro>/Users/klund/dev/gemfire/open/geode-dunit > >> [2294]$ > >>> find . -name '*Test.java' > >>> > >>> ./src/main/java/org/apache/geode/codeAnalysis/ > >> AnalyzeSerializablesJUnitTest.java > >>> > >> Has been split into a base class that all other projects derive from and > >> moved to geode-junit. > >> > >> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> PKCSPrincipalTest.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> UsernamePrincipalTest.java > >>> > >> Moved these unit tests to dunit/src/test > >> > >> > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/cache/examples/ > >> CacheTestCaseExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> AsyncInvokeCallableExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> AsyncInvokeRunnableExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> BeforeClassExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> CatchingUnexpectedExceptionExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> DistributedTestCaseExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> DistributedTestRuleExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> DoNotHandleUnexpectedExceptionExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> FixtureOrderingExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> InvokeRunnableExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> LocatorPortClusterExampleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/examples/ > >> ReplaceTryFinallyExampleTest.java > >>> > >> All of these are "examples". I wonder if they should be treated > >> differently. For the time they are in geode-dunit/src/distributedTest. > >> > >> > >> ./src/main/java/org/apache/geode/test/dunit/internal/ > >> DUnitBlackboardDUnitTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> CacheRuleBuilderDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> CacheRuleDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> ClusterStartupRuleCanSpecifyOlderVersionsDUnitTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> DistributedRestoreSystemPropertiesDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> DistributedTestRuleDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> MemberStarterRuleAwaitDUnitTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> MemberStarterRuleAwaitIntegrationTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> MemberStarterRuleIntegrationTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> MemberStarterRuleTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> SharedCountersRuleDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/rules/tests/ > >> SharedErrorCollectorDistributedTest.java > >>> ./src/main/java/org/apache/geode/test/dunit/tests/ > >> BasicDistributedTest.java > >>> > >>> ./src/main/java/org/apache/geode/test/dunit/tests/ > >> GetCurrentVmNumDistributedTest.java > >>> ./src/main/java/org/apache/geode/test/dunit/tests/ > VMDistributedTest.java > >> > >> Moved to geode-dunit/src/distributedTest. > >> > >> > >>> The following is the list of testing classes in geode-junit that > probably > >>> shouldn't be part of a geode-junit release: > >>> > >>> ./src/main/java/com/examples/ds/Address.java > >>> ./src/main/java/com/examples/ds/Company.java > >>> ./src/main/java/com/examples/ds/CompanySerializer.java > >>> ./src/main/java/com/examples/ds/Employee.java > >>> ./src/main/java/com/examples/ds/PutDataSerializables.java > >>> ./src/main/java/com/examples/ds/User.java > >>> ./src/main/java/com/examples/snapshot/MyDataSerializer.java > >>> ./src/main/java/com/examples/snapshot/MyObject.java > >>> ./src/main/java/com/examples/snapshot/MyObjectDataSerializable.java > >>> ./src/main/java/com/examples/snapshot/MyObjectPdx.java > >>> ./src/main/java/com/examples/snapshot/MyObjectPdxSerializable.java > >>> ./src/main/java/com/examples/snapshot/MyPdxSerializer.java > >>> ./src/main/java/org/apache/geode/cache/query/CacheUtils.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Address.java > >>> ./src/main/java/org/apache/geode/cache/query/data/City.java > >>> ./src/main/java/org/apache/geode/cache/query/data/ > CollectionHolder.java > >>> ./src/main/java/org/apache/geode/cache/query/data/ > ComparableWrapper.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Country.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Data.java > >>> ./src/main/java/org/apache/geode/cache/query/data/District.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Employee.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Instrument.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Inventory.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Keywords.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Manager.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Numbers.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PhoneNo.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Portfolio.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PortfolioData.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PortfolioNoDS.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PortfolioPdx.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Position.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PositionNoDS.java > >>> ./src/main/java/org/apache/geode/cache/query/data/PositionPdx.java > >>> > >>> ./src/main/java/org/apache/geode/cache/query/data/ > >> ProhibitedSecurityQuote.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Quote.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Restricted.java > >>> ./src/main/java/org/apache/geode/cache/query/data/SecurityMaster.java > >>> ./src/main/java/org/apache/geode/cache/query/data/State.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Street.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Student.java > >>> ./src/main/java/org/apache/geode/cache/query/data/TestData.java > >>> ./src/main/java/org/apache/geode/cache/query/data/TradingLine.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Vehicle.java > >>> ./src/main/java/org/apache/geode/cache/query/data/Village.java > >>> ./src/main/java/org/apache/geode/cache/util/TxEventTestUtil.java > >>> ./src/main/java/org/apache/geode/cache30/MyGatewayEventFilter1.java > >>> ./src/main/java/org/apache/geode/cache30/MyGatewayEventFilter2.java > >>> ./src/main/java/org/apache/geode/cache30/ > MyGatewayTransportFilter1.java > >>> ./src/main/java/org/apache/geode/cache30/ > MyGatewayTransportFilter2.java > >>> ./src/main/java/org/apache/geode/DeltaTestImpl.java > >>> > >>> ./src/main/java/org/apache/geode/distributed/ > >> TestServerLauncherCacheProvider.java > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > data/CustId.java > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> data/OrderId.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> data/ShipmentId.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> MyFunctionExecutionException.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> AbstractMockExtension.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> AbstractMockExtensionXmlGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> AlterMockCacheExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> AlterMockRegionExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> CreateMockCacheExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> CreateMockRegionExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> DestroyMockCacheExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> DestroyMockRegionExtensionFunction.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockCacheExtension.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockCacheExtensionXmlGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockExtensionCommands.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockExtensionXmlParser.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockRegionExtension.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/extension/mock/ > >> MockRegionExtensionXmlGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/ > >> TestObjectWithIdentifier.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> CustomAsyncEventListener.java > >>> ./src/main/java/org/apache/geode/internal/cache/wan/Filter70.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyAsyncEventListener.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyAsyncEventListener2.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyDistributedSystemListener.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewayEventFilter.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewaySenderEventListener.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewaySenderEventListener2.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewayTransportFilter1.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewayTransportFilter2.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewayTransportFilter3.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> MyGatewayTransportFilter4.java > >>> ./src/main/java/org/apache/geode/internal/cache/wan/QueueListener.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> WaitingAsyncEventListener.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/commands/ > >> CommandAvailabilityIndicatorTestHelper.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/commands/ > >> ToUpperResultCollector.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> domain/MyCacheListener.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> domain/MyCacheLoader.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> domain/MyCacheWriter.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> domain/Stock.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/dto/Car.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/dto/Key.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/dto/Key1.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/dto/Key2.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> dto/ObjectWithCharAttr.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > dto/Value.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > dto/Value1.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > dto/Value2.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> ResultHandler.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/ > >> configuration/ConfigGroup.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/ > >> security/TestCommand.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/ > >> security/TestFunctions.java > >>> ./src/main/java/org/apache/geode/pdx/DomainObject.java > >>> ./src/main/java/org/apache/geode/pdx/DomainObjectBad.java > >>> ./src/main/java/org/apache/geode/pdx/DomainObjectClassLoadable.java > >>> ./src/main/java/org/apache/geode/pdx/DomainObjectPdxAuto.java > >>> > >>> ./src/main/java/org/apache/geode/pdx/DomainObjectPdxAutoNoDefaultCo > >> nstructor.java > >>> ./src/main/java/org/apache/geode/pdx/DSInsidePdx.java > >>> ./src/main/java/org/apache/geode/pdx/Employee.java > >>> ./src/main/java/org/apache/geode/pdx/NestedPdx.java > >>> ./src/main/java/org/apache/geode/pdx/NonDelegatingLoader.java > >>> ./src/main/java/org/apache/geode/pdx/PdxInsideDS.java > >>> ./src/main/java/org/apache/geode/pdx/SeparateClassloaderPdx.java > >>> ./src/main/java/org/apache/geode/pdx/SimpleClass.java > >>> ./src/main/java/org/apache/geode/pdx/SimpleClass1.java > >>> ./src/main/java/org/apache/geode/pdx/SimpleClass2.java > >>> ./src/main/java/org/apache/geode/security/PDXPostProcessor.java > >>> > >>> ./src/main/java/org/apache/geode/security/query/data/ > >> PdxQueryTestObject.java > >>> ./src/main/java/org/apache/geode/security/query/data/PdxTrade.java > >>> ./src/main/java/org/apache/geode/security/query/data/ > >> QueryTestObject.java > >>> ./src/main/java/org/apache/geode/security/query/UserPermissions.java > >>> ./src/main/java/org/apache/geode/security/ > SimpleTestSecurityManager.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> UserPasswordAuthInit.java > >>> ./src/main/java/org/apache/geode/security/TestPostProcessor.java > >>> ./src/main/java/org/apache/geode/security/TestSecurityManager.java > >>> > >> > >> All of these are shared across projects and test sources sets and must > be > >> in a common test framework or be duplicated in each source set. > >> > >> > >>> The following is the list of testing classes in geode-junit that > probably > >>> shouldn't be part of a geode-unit release: > >>> > >>> ./src/main/java/org/apache/geode/cache/client/internal/ > >> LocatorTestBase.java > >>> > >>> ./src/main/java/org/apache/geode/cache/query/cq/dunit/ > >> CqQueryTestListener.java > >>> > >>> ./src/main/java/org/apache/geode/cache/query/dunit/ > >> CloseCacheAuthorization.java > >>> ./src/main/java/org/apache/geode/cache/query/dunit/HelperTestCase.java > >>> ./src/main/java/org/apache/geode/cache/query/QueryTestUtils.java > >>> ./src/main/java/org/apache/geode/cache30/ > CacheSerializableRunnable.java > >>> ./src/main/java/org/apache/geode/cache30/CacheTestCase.java > >>> ./src/main/java/org/apache/geode/cache30/ > CacheXml70DUnitTestHelper.java > >>> ./src/main/java/org/apache/geode/cache30/CacheXmlTestCase.java > >>> ./src/main/java/org/apache/geode/cache30/CertifiableTestCacheListener. > >> java > >>> ./src/main/java/org/apache/geode/cache30/ClientServerTestCase.java > >>> ./src/main/java/org/apache/geode/cache30/MultiVMRegionTestCase.java > >>> ./src/main/java/org/apache/geode/cache30/RegionTestCase.java > >>> ./src/main/java/org/apache/geode/cache30/TestCacheCallback.java > >>> ./src/main/java/org/apache/geode/cache30/TestCacheListener.java > >>> ./src/main/java/org/apache/geode/cache30/TestCacheLoader.java > >>> ./src/main/java/org/apache/geode/cache30/TestCacheWriter.java > >>> > >>> ./src/main/java/org/apache/geode/codeAnalysis/ > >> AnalyzeSerializablesJUnitTest.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/ > ClassAndMethodDetails.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/ClassAndMethods.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/ > >> ClassAndVariableDetails.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/ClassAndVariables.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/CompiledClassUtils.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/ > >> CompiledAttribute.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/ > CompiledClass.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/CompiledCode.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/ > CompiledField.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/ > CompiledMethod.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/Cp.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpClass.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpDouble.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > CpFieldref.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpFloat.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpInteger.java > >>> > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > >> CpInterfaceMethodref.java > >>> > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > >> CpInvokeDynamic.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpLong.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > >> CpMethodHandle.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > CpMethodref.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > >> CpMethodType.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/ > >> CpNameAndType.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpString.java > >>> ./src/main/java/org/apache/geode/codeAnalysis/decode/cp/CpUtf8.java > >>> > >>> ./src/main/java/org/apache/geode/distributed/internal/membership/gms/ > >> MembershipManagerHelper.java > >>> ./src/main/java/org/apache/geode/internal/AvailablePortHelper.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/ > >> CustomerIDPartitionResolver.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> CustomerIDPartitionResolver.java > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> data/Customer.java > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > data/Order.java > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> data/Shipment.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/execute/ > >> PRColocationDUnitTestHelper.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/tier/ > >> sockets/CacheServerTestUtil.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/tier/sockets/ > >> ClientServerMiscDUnitTestBase.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/tier/sockets/ > >> ConflationDUnitTestHelper.java > >>> > >>> ./src/main/java/org/apache/geode/internal/cache/wan/ > >> AsyncEventQueueTestBase.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> commands/CliCommandTestBase.java > >>> ./src/main/java/org/apache/geode/management/internal/cli/ > >> HeadlessGfsh.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/ > >> configuration/ClusterConfig.java > >>> > >>> ./src/main/java/org/apache/geode/management/internal/configuration/ > >> ClusterConfigTestBase.java > >>> ./src/main/java/org/apache/geode/management/ManagementTestBase.java > >>> ./src/main/java/org/apache/geode/management/MBeanUtil.java > >>> ./src/main/java/org/apache/geode/management/MXBeanAwaitility.java > >>> ./src/main/java/org/apache/geode/security/ClientAuthorizationTestCase. > >> java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> AuthzCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> CredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> DummyAuthzCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> DummyCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> LdapUserCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> PKCSCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> SSLCredentialGenerator.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> UserPasswordWithExtraPropsAuthInit.java > >>> > >>> ./src/main/java/org/apache/geode/security/generator/ > >> XmlAuthzCredentialGenerator.java > >>> ./src/main/java/org/apache/geode/security/query/QuerySecurityBase.java > >>> ./src/main/java/org/apache/geode/security/SecurityTestUtil.java > >>> ./src/main/java/org/apache/geode/security/SecurityTestUtils.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> DummyAuthenticator.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> DummyAuthorization.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> FunctionSecurityPrmsHolder.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> LdapUserAuthenticator.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> PKCSAuthenticator.java > >>> ./src/main/java/org/apache/geode/security/templates/PKCSAuthInit.java > >>> ./src/main/java/org/apache/geode/security/templates/PKCSPrincipal.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> PKCSPrincipalTest.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> SimpleAccessController.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> SimpleAuthenticator.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> UsernamePrincipal.java > >>> > >>> ./src/main/java/org/apache/geode/security/templates/ > >> UsernamePrincipalTest.java > >>> ./src/main/java/org/apache/geode/security/templates/ > >> XmlAuthorization.java > >>> ./src/main/java/org/apache/geode/security/templates/ > XmlErrorHandler.java > >>> > >> > >> All of these are shared across projects and test sources sets and must > be > >> in a common test framework or be duplicated in each source set. > >> > >> > >> > >>> And we have some classes in geode-dunit that should instead be in > >>> geode-junit (are we reviewing these pull requests?): > >>> > >>> ./src/main/java/org/apache/geode/test/junit/rules/ClientCacheRule.java > >>> > >>> ./src/main/java/org/apache/geode/test/junit/rules/ > >> ConnectionConfiguration.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/DiskDirRule.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/GfshCommandRule.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/Locator.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/ > >> LocatorStarterRule.java > >>> > >>> ./src/main/java/org/apache/geode/test/junit/rules/ > >> MBeanServerConnectionRule.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/Member.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/ > MemberStarterRule.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/Server.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/ > ServerStarterRule.java > >>> ./src/main/java/org/apache/geode/test/junit/rules/VMProvider.java > >>> > >> > >> I think all of these had dependencies inside the dunit framework. They > can > >> always be refactored. > >> > >> -Jake > >> >