Commit Graph

132 Commits

Author SHA1 Message Date
John Blum
bb63670d65 Format source code.
Edit Javadoc.
2020-06-17 19:19:59 -07:00
John Blum
af6340f8a0 Set the default 'destroyEventTypes' to AfterTestClassEvent.class. 2020-06-17 19:15:55 -07:00
John Blum
15077eb5f4 Rename @EnableGemFireMockObjects.destroyOnEvent annotation attribute to 'destroyOnEvents'.
Add additional test cases for the GemFireMockObjectsConfiguration class testing the ApplicationListener and BeanPostProcessor bean configurations.
2020-06-17 19:09:15 -07:00
John Blum
06aeaa62cf Add Unit Tests for GemFireGarbageCollectorApplicationListener.
Resolves gh-21.
2020-06-17 17:18:58 -07:00
John Blum
ddfbfb3852 Add Unit Tests for GemFireGarbageCollectorConfiguration.
Resolves gh-21.
2020-06-17 17:18:49 -07:00
John Blum
ed9ac261f4 Set default GemFire Gargabe Collector event type to AfterTestClassEvent.class.
Add accessor methods for gemfireGarbageCollectorEventTypes and tryCleanDiskStoreFiles configuration settings.

Resolves gh-21.
2020-06-17 15:11:01 -07:00
John Blum
a4e6892a55 Add isEmpty(:File) method to determine whether a file or a directory is empty.
A file is empty if the file size (length) is 0 bytes.  A directory is empty if it contains no files.
2020-06-17 15:04:56 -07:00
John Blum
140b423f70 Add nullSafeLength(:File) method to safely invoke file.length() protexting against a null File reference. 2020-06-17 15:04:56 -07:00
John Blum
6a6cd7c136 Add new @EnableGemFireGarbageCollector annotation and logic to collect and cleanup after GemFire/Geode, deleting all files and directories in the filesystem left over after a GemFire/Geode process terminates.
Resolves gh-21.
2020-06-17 15:04:56 -07:00
John Blum
56dc4ffec6 Extend SDG's AbstractAnnotationConfigSupport base class. 2020-06-15 16:35:38 -07:00
John Blum
75db4b496a Edit Javadoc. 2020-06-15 16:34:29 -07:00
John Blum
ede0b99e28 Correct Generics signature.
Format source code.
2020-06-15 16:33:55 -07:00
John Blum
96e9b05750 Add Spring TestExecutionListener implementation to destroy all GemFire/Geode Mock Objects when configured TestContextEvents by type are fired during the test execution lifecycle.
Resolves gh-20.
2020-05-21 21:47:02 -07:00
John Blum
4f4cfad6c2 Create enumeration of all Spring TestContext framework, TestContextEvent types.
Resolves gh-20.
2020-05-21 21:45:52 -07:00
John Blum
39f36ce9d0 Add Spring ApplicationListener implementation to destroy all GemFire/Geode Mock Objects when configured ApplicationEvents are fired in a Spring context.
Resolves gh-20.
2020-05-21 21:45:13 -07:00
John Blum
ff49f11a02 Add Unit Tests for GemFireMockObjectsBeanPostProcessor. 2020-05-21 21:43:21 -07:00
John Blum
fbb39b97b9 Add Unit Tests for GemFireMockObjectsApplicationContextInitializer. 2020-05-21 21:42:46 -07:00
John Blum
4761c0ade5 Edit Javadoc. 2020-05-21 21:40:26 -07:00
John Blum
21761a789c Move GemFireMockObjectsBeanPostProcessor to org.springframework.data.gemfire.tests.mock.beans.factory.config. 2020-05-21 21:40:26 -07:00
John Blum
af9237eeb1 Add 'destroyOnEvent' configuration annotation attribute.
The 'destoryOnEvent' EnableGemFireMockObjects annotation attribute configures specific Spring ApplicationEvent types (Class) that will trigger the destruction of all GemFire/Geode Mock Objects.

Add bean definition and declaration for the DestroyGemFireMockObjectsApplicationListener.

Add Unit Tests for the GemFireMockObjectsConfiguration class.

Resolves gh-20.
2020-05-21 21:40:26 -07:00
John Blum
53893bd49f Add support to suppress GemFire/Geode Mock Object destruction on ContextClosedEvents. 2020-05-19 21:59:22 -07:00
John Blum
703e64a010 Add overloaded timedWait(..) methods taking a non-null java.time.Duration object.
Deprecate WaitCondition and introduce a new Condition interface.
2020-04-16 10:38:19 -07:00
John Blum
6dec5b8d73 Add utility method to find and reserve allocated network ports. 2020-04-15 13:12:35 -07:00
John Blum
68c5edb974 Format source code.
Optimize imports.
2020-02-22 20:26:52 -08:00
John Blum
19847910c8 Optimize imports. 2020-02-22 20:17:34 -08:00
John Blum
8c0739cb44 Switch use of Descriptable.as(String description, Object... args) to Descriptable.describedAs(String description, Object... args). 2020-01-31 11:29:08 -08:00
John Blum
07d3f0c8af Remove unnecessary use of @SuppressWarnings("all") annotation. 2020-01-23 13:57:22 -08:00
John Blum
77e5445142 Replace use of Apache Shiro Assert with Spring Framework Assert. 2020-01-23 13:56:25 -08:00
John Blum
01028ca116 Add Unit Tests for AEQ pause & resume event dispatching. 2019-11-04 12:25:41 -08:00
John Blum
9a09137652 Fix bug in the mocking support for AEQ resume event dispatching.
Additionally, add mocking behavior for o.a.g.cache.asyncqueue.AsyncEventQueue.isDipatchingEnabled().
2019-10-30 20:38:09 -07:00
John Blum
90fc5209f7 Add setField(target:Object, fieldName:String, value:Object) method to ReflectionUtils to set fields of an Object. 2019-10-29 15:04:53 -07:00
John Blum
8fe85031b0 Add custom extension of the org.springframework.util.ReflectionUtils utility class.
Added getFieldValue(:Object, :String) method to get the value of a named Field on a Object.

Added variants of makeAccessible(..) method in org.springframework.util.ReflectionUtils to also return the (accessible) Member.
2019-10-29 13:29:35 -07:00
John Blum
7532d3a993 Add Mock Object support for Apache Geode's AEQ pause and resume event disptaching functionality. 2019-10-29 13:04:05 -07:00
John Blum
b9b9f51f9c Add Apache Geode Logger with a log-level of 'ERROR'. 2019-10-01 13:04:21 -07:00
John Blum
859f510200 Switch clearing all Java, Apache Geode, Pivotal GemFire and Spring System Properties to after test class. 2019-09-09 19:24:51 -07:00
John Blum
9f87352a5e Rename closeAnyExistingGemFireCacheInstanceBeforeTestExecution() as closeAnyGemFireCacheInstanceBeforeTestExecution().
Rename closeAnyExistingSocketConfigurationBeforeTestExecution() as closeAnySocketConfigurationBeforeTestExecution().

Rename closeAnyExistingSslConfigurationBeforeTestExecution() as closeAnySslConfigurationBeforeTestExecution().

Rename stopAnyExistingGemFireLocatorBeforeTestExecution() as stopAnyGemFireLocatorBeforeTestExecution().
2019-09-09 19:24:25 -07:00
John Blum
4aa64fa637 Destroy all GemFire Mock Objects after each test case. 2019-09-09 19:10:59 -07:00
John Blum
e38fdeb32f Add null assertion for PoolManager.find('TEST') in tearDown(). 2019-09-09 19:01:54 -07:00
John Blum
2d72115fa9 Move GemFireObjectCreationTriggeredByGemFirePropertyConfigurationIntegrationTests to org.springframework.data.gemfire.tests. 2019-09-09 18:49:37 -07:00
John Blum
0653003f28 Move MockClientCacheDefaultPoolRegisteredWithPoolManagerUnitTests to org.springframework.data.gemfire.tests. 2019-09-09 18:49:37 -07:00
John Blum
36a0271505 Edit Javadoc; Optimize Imports. 2019-09-09 18:49:37 -07:00
John Blum
56cf069384 Eagerly create, initialize and register the 'DEFAULT' Pool with the o.a.g.cache.client.PoolManager when spying on the ClientCacheFactory and create() is called. 2019-09-09 18:49:37 -07:00
John Blum
9d2484855d Cleanup all SSL configuration and state in Apache Geode. 2019-09-09 01:39:03 -07:00
John Blum
b5f0bf1e09 Add Test Framework support for Mock Pool registration with the Apache Geode o.a.g.cache.client.PoolManager. 2019-09-03 18:36:10 -07:00
John Blum
3beec6db30 Optimize imports. 2019-09-03 14:02:38 -07:00
John Blum
6ce9982a25 Add Test Framework setup support for stopping all Apache Geode Locators before test execution. 2019-09-03 14:00:29 -07:00
John Blum
4d00feb32c Fix race condition when concurrently accessing cached GemFire Mock Objects Collection. 2019-09-03 11:13:35 -07:00
John Blum
5b0b4a586d Fix bug in overloaded spyOn(..) methods for o.a.g.cache.CacheFactory and o.a.g.cache.client.ClientCacheFactory object, which leads to a org.mockito.exceptions.misusing.UnfinishedStubbingException.
This problem was exposed in SSDG's test suite when mocking the ClientCache and initializing PDX.

Essentially, with use of the lazy Supplier for GemFireCache object creation, STDG was effectively stubbing on the clientCacheFactorySpy (e.g. clientCacheFatorySpy.setPdxSerializer(..)) inside of another stub call, clientCacheFactorySpy.create().
2019-08-13 15:57:04 -07:00
John Blum
2272f3e95a Add support to mock the GemFireCache.getName() property based on the GemFire distribution configuration properties when using the factories to create cache instances. 2019-07-25 14:09:17 -07:00
John Blum
317e074c84 Lazily create the GemFireCache instance when spying on the o.a.g.cache.CacheFactory as well as the o.a.g.cache.client.ClientCacheFactory.
This change effectively uses a java.util.function.Supplier to lazily request the 'single' cache instance or create a new cache instance when either CacheFactory.create() or ClientCacheFactory.create() is called.
2019-07-25 13:49:45 -07:00