From 3efceeb494ceb3bb9bbb6189f8cdf5f5e38e4a78 Mon Sep 17 00:00:00 2001 From: John Blum Date: Tue, 14 Sep 2021 23:37:12 -0700 Subject: [PATCH] Add overloaded newApplicationContext(..) method to accept a Function to further initialize and process the new ApplicationContext created in the SpringApplicationContextIntegrationTestsSupport class. --- .../SpringApplicationContextIntegrationTestsSupport.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/spring-data-geode-test/src/main/java/org/springframework/data/gemfire/tests/integration/SpringApplicationContextIntegrationTestsSupport.java b/spring-data-geode-test/src/main/java/org/springframework/data/gemfire/tests/integration/SpringApplicationContextIntegrationTestsSupport.java index 7fb81ae..d6bea67 100644 --- a/spring-data-geode-test/src/main/java/org/springframework/data/gemfire/tests/integration/SpringApplicationContextIntegrationTestsSupport.java +++ b/spring-data-geode-test/src/main/java/org/springframework/data/gemfire/tests/integration/SpringApplicationContextIntegrationTestsSupport.java @@ -16,6 +16,7 @@ package org.springframework.data.gemfire.tests.integration; import java.util.Map; +import java.util.function.Function; import org.junit.After; @@ -54,12 +55,18 @@ public abstract class SpringApplicationContextIntegrationTestsSupport extends In } protected ConfigurableApplicationContext newApplicationContext(Class... annotatedClasses) { + return newApplicationContext(this::processBeforeRefresh, annotatedClasses); + } + + protected ConfigurableApplicationContext newApplicationContext( + Function applicationContextInitializer, + Class... annotatedClasses) { AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(); applicationContext.register(ArrayUtils.nullSafeArray(annotatedClasses, Class.class)); applicationContext.registerShutdownHook(); - processBeforeRefresh(applicationContext); + applicationContextInitializer.apply(applicationContext); applicationContext.refresh(); return setApplicationContext(applicationContext);