Commit Graph

51 Commits

Author SHA1 Message Date
John Blum
3af3d2f78b Adapt to API in Spring Data Kay. 2018-11-07 21:48:07 -08:00
John Blum
1b5f8e22d2 Change the 'port' method parameter, @Value annotation configuration of the 'spring.data.gemfire.cache.server.port' property to use CacheServer.DEFAULT_PORT as the default value. 2018-11-05 22:47:16 -08:00
John Blum
8ff823b268 Add configuration for the 'spring.data.gemfire.pool.servers' property to automatically connect client and server in client/server integration tests. 2018-11-05 22:41:41 -08:00
John Blum
c09f1f722c Add @Before test case setup method to enable GemFire/Geode OQL query debugging.
Add @AfterClass test class tear down method to unregister all GemFire/Geode DataSerializers.

Move integration tests support methods for creating directories, converting class and package names to resource pathnames, locating Spring application context XML configuration files, logging System properties and configuring GemFire/Geode logging from the ClientServerIntegrationTestsSupport class to the IntegrationTestsSupport class.
2018-11-05 19:20:34 -08:00
John Blum
8f6b7d6364 Guard against null access on ClientCache.getCurrentServers() by initializing the 'DEFAULT' Pool. 2018-10-06 16:28:17 -07:00
John Blum
2077e9faf0 Add additional test case asserting the ClientCache was mocked successfully. 2018-10-06 15:35:18 -07:00
John Blum
e372410f29 Add capability to configure the Spring Boot, SpringApplicationBuilder.contextClass(..). 2018-10-05 17:53:00 -07:00
John Blum
7c99575ed4 Add mock object for o.a.g.distributed.DistributedMember. 2018-10-02 15:39:07 -07:00
John Blum
8d82fd8807 Do not mock Pool.socketConnectTimeout and Pool.subscriptionTimeoutMultiplier with SD Kay. 2018-09-19 17:50:56 -07:00
John Blum
66e3c1e46b Add lenient MockSettings for mock RegionAttributes. 2018-09-19 17:06:05 -07:00
John Blum
c77ee37c70 Do not mock GatewayReceiver.hostnameForClients with SD Kay. 2018-09-19 16:06:29 -07:00
John Blum
8625d89a9c Fix mock ServerMetrics getMaxConnections() and getSubscriptionConnectionCount() return values. 2018-09-19 13:04:22 -07:00
John Blum
a233949add Add mocking support for o.a.g.cache.server.CacheServer.getLoadProbe() and o.a.g.cache.server.CacheServer.setLoadProbe(:ServerLoadProbe). 2018-09-19 12:03:52 -07:00
John Blum
4ea6c3921d Add MockSettings to all mock objects.
Set mock objects to lenient and not strict stubbing.
2018-09-19 11:19:52 -07:00
John Blum
9e51e631c7 Fix missing mock hostnameForClients return value.
Prevent mocking for null ClientSubscriptionConfig and ServerLoadProbe objects.
2018-09-19 10:58:01 -07:00
John Blum
8eb2321dca Fix unnecessary Region mocking when no Regions exist. 2018-09-19 10:20:44 -07:00
John Blum
797eda1494 Refactor mockGemFireCache(..) and make public; add null check and mock the GemFireCache when mockGemFireCache argument is null.
Add mockResourceManager(..) method.
2018-09-19 09:20:23 -07:00
John Blum
9523d37272 Add mock object support for mocking Apache Geode/Pivotal GemFire Cache, Distributed System, ResourceManager and Region objects. 2018-09-19 09:01:43 -07:00
John Blum
d3dcb94c78 Edit Javadoc. 2018-09-18 20:53:27 -07:00
John Blum
bc53c115a5 Add mock object support for mocking Apache Geode/Pivotal GemFire Index objects. 2018-09-18 20:51:51 -07:00
John Blum
a02ee5ec99 Add mock object support for mocking Apache Geode/Pivotal GemFire DiskStore objects. 2018-09-18 20:51:29 -07:00
John Blum
bc04b02b3a Add mock object support for manually mocking Apache Geode/Pivotal GemFire Pool objects. 2018-09-18 18:28:07 -07:00
John Blum
ddf01371cc Add mock object support for manually mocking Apache Geode/Pivotal GemFire Gateway (WAN) objects. 2018-09-18 18:27:39 -07:00
John Blum
fb71fce848 Add mock object support for manually mocking Apache Geode/Pivotal GemFire CacheServer objects. 2018-09-18 18:27:08 -07:00
John Blum
d5308633bc Add AsyncEventQueue ID as the AsyncEventQueue mock object name.
Edit Javadoc.
2018-09-18 18:26:28 -07:00
John Blum
fab30904b0 Add mock object support for manually mocking Apache Geode/Pivotal GemFire AsyncEventQueue objects. 2018-09-18 16:36:30 -07:00
John Blum
142169e175 Polish. 2018-09-18 16:09:46 -07:00
John Blum
0782bc2205 Add processBeforeBuild(:SpringApplicationBuilder) and processBeforeRun(:SpringApplication) methods. 2018-08-29 08:53:22 -07:00
John Blum
c65e142924 Move SpringBootApplicationIntegrationTestsSupport from org.springframework.data.gemfire.tests.integration.config to org.springframework.data.gemfire.tests.integration. 2018-08-28 18:20:58 -07:00
John Blum
228a5bc0eb Add SpringBootApplicationIntegrationTestsSupport class to configure and bootstrap Spring ApplicationContexts uses Spring Boot during integration testing. 2018-08-28 17:01:27 -07:00
John Blum
a8190ae205 Add protected setApplicationContext(:ConfigurableApplicationContext):ConfigurableApplicationContext method. 2018-08-28 16:50:17 -07:00
John Blum
632561b475 Implement o.s.context.ApplicationListener<ContextClosedEvent> to workaround changes in Spring Framework 5.1.0.RC2 related to @EventListener infrastructure handling. 2018-08-21 19:55:10 -07:00
John Blum
cb7a1e37fc Deprecate the SubscriptionEnabledClientServerIntegrationTestsConfiguration class. 2018-08-21 19:55:10 -07:00
John Blum
d65dd679c2 Add overloaded waitOn(..) method to supply Condition, duration and interval. 2018-08-21 19:55:10 -07:00
John Blum
7718b8d8b2 Fix waitOnServerToStart(..) return statement to correctly return 'connected.get()'. 2018-08-21 19:55:09 -07:00
John Blum
8bd76409f8 Refactor the clientCachePoolSocketConnectTimeoutBeanPostProcessor bean definition to be conditional on the presence of the setSocketConnectTimeout(:int) method on the ClientCacheFactoryBean class. 2018-08-21 19:55:02 -07:00
John Blum
62acd73133 Refactor and compose the ClientCache DEFAULT Pool and any explicit Pool Socket connect timeout configuration handlers into a single BeanPostProcessor.
Register the ClientMembershipListener in a void, @PostConstruct, SubscriptionEnabledClientServerIntegrationTestsConfiguration class method.

Re-implement isProxyClientRegion(..) to short circuit if the ClientRegionFactoryBean.poolName is set.

Remove the unneeded isProxyClientRegion(:ClientRegionShortcut) method.

Rename isProxyClientRegion(..) to isClientProxyRegion(..).
2018-08-14 16:46:26 -07:00
John Blum
86dd856b6b Edit Javadoc. 2018-08-14 16:36:04 -07:00
John Blum
75772ee1d4 Re-implement findAvailablePort() to setReuseAddress to true before creating and binding the Socket.
Re-implement waitForServerToStart(host:String, port:int) to call waitOn(:Condition, duration).
2018-08-14 16:34:55 -07:00
John Blum
f83692b82e Rename clearAllSpringApacheGeodeAndPivotalGemFireDotPrefixedSystemProperties to clearAllGemFireGeodeAndSpringDotPrefixedSystemProperties. 2018-08-14 16:32:30 -07:00
John Blum
889368868e Reverse order of client-server connectivity verification by first handling the memberJoined event followed by successful Subscription Queue initialization.
Add methods to override the default Socket connect timeout and general timeout via extension.

Add ClientCacheConfigurer to configure the ClientCache, DEFAULT Pool Socket.connect(..) timeout.

Add BeanPostProcessor to configure any PoolFactoryBean.socketConnectTimeout.
2018-08-14 00:42:16 -07:00
John Blum
e3bc02d419 Add static @Configuration class to configure an embedded Locator & Manager service, enabled via a Spring profile.
Additionally, enable GemFire/Geode logging at 'config'.
2018-08-13 15:28:34 -07:00
John Blum
640218dc1f Add Condition on propertyPlaceholderConfigurer bean definition verifying that Spring Boot is absent before registering the bean. 2018-08-13 13:13:39 -07:00
John Blum
5fd1382a50 Rename shouldVerifyGemFireServerIsRunning(..) to doVerifyGemFireServerIsRunning(..).
Rename isBeanOfImportance(..) to isVeryImportantBean(..).

Format source code.
2018-08-13 13:13:39 -07:00
John Blum
80d09144b4 Add static PropertySourcesPlaceholderConfigurer bean definition for resolving Spring @Value annotation property placeholders. 2018-08-13 13:13:30 -07:00
John Blum
68b25ebdb9 Add overridable, protected processBeforeRefresh(:ConfigurableApplicationContext):ConfigurableApplicationContext method and call in the newApplicationContext(..) method before the ApplicationContext is refreshed. 2018-08-13 13:02:07 -07:00
John Blum
138b0b57aa Rename clearAllSpringGeodeGemFireDotPrefixedSystemProperties to clearAllSpringApacheGeodeAndPivotalGemFireDotPrefixedSystemProperties. 2018-08-13 13:00:21 -07:00
John Blum
c174f008fe Fix Region AttributesMutator initialization bug.
The bug was caused by the mocking logic in Region.getAttributes(), which lazily initializes the RegionAttributes upon first access, and by extension, the Region AttributesMutator only gets intialized after the Region.getAttributes() method is invoked.  Therefore, if Region.getAttributesMutator() is called before Region.getAttributes() and any AttributesMutator method is invoked then a NullPointerException is thrown.
2018-08-08 18:42:40 -07:00
John Blum
eae35daef5 Fix closeApplicationContext() JUnit after test case method test callback to use @After annotation rather than @AfterClass. 2018-06-21 17:30:58 -07:00
John Blum
6b1fcbc657 Add Integration Tests support for configuring, bootstrapping and properly closing a Spring ApplicationContext. 2018-06-21 17:10:22 -07:00