If you haven't seen this, you should have a look at *Spring Test for Apache
Geode* (STDG) [1]

I have much work to do yet to round this project out: docs, more
"formalized" integration test support (think JUnit Rules and custom Runners
over extension, etc) and so on.

However, mocking for Geode Objects in Unit Tests is very robust and
complete.  For instance, writing a Unit Test with mocked Geode Objects is
as simple as [2].  When using @EnableGemFireMockObjects annotation, you
literally get a mock object for every single Geode object: [Client]Cache,
CacheServer, Region, Index, DiskStore, AEQ, Gateway[Sender|Receiver], etc.

Still, even the integration test support is pretty extensive, handling
things that the user would not normally know to handle.

You can find many examples of this test framework in action in *Spring Boot
for Apache Geode* (SBDG) [3] as it was used extensively to test SBDG.  Over
time, I plan to retrofit and consolidate *Spring Data for Apache Geode*
(SDG) and *Spring Session for Apache Geode's* (SSDG) test suites on this
test framework.

Regards,
John


[1] https://github.com/spring-projects/spring-test-data-geode
[2]
https://github.com/spring-projects/spring-boot-data-geode/blob/master/spring-geode/src/test/java/org/springframework/geode/config/annotation/DurableClientConfigurationIntegrationTests.java#L121-L124
[3] https://github.com/spring-projects/spring-boot-data-geode



On Fri, 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
> >
>



-- 
-John
john.blum10101 (skype)

Reply via email to