Fix test failures due to upgrade of Spring Test for Apache Geode/Pivotal GemFire to 1.0.0.M6.
This commit is contained in:
@@ -57,12 +57,12 @@ import org.springframework.test.context.junit4.SpringRunner;
|
||||
* @see org.springframework.test.context.junit4.SpringRunner
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@DirtiesContext
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(
|
||||
classes = AutoConfiguredCloudSecurityContextIntegrationTests.GemFireClientConfiguration.class,
|
||||
webEnvironment = SpringBootTest.WebEnvironment.NONE
|
||||
)
|
||||
@DirtiesContext
|
||||
@SuppressWarnings("unused")
|
||||
public class AutoConfiguredCloudSecurityContextIntegrationTests
|
||||
extends AbstractAutoConfiguredSecurityContextIntegrationTests {
|
||||
@@ -78,6 +78,7 @@ public class AutoConfiguredCloudSecurityContextIntegrationTests
|
||||
startGemFireServer(GemFireServerConfiguration.class, "-Dspring.profiles.active=security-cloud");
|
||||
|
||||
loadVcapApplicationProperties();
|
||||
unsetTestAutoConfiguredPoolServersPortSystemProperty();
|
||||
|
||||
GemfireBeanFactoryLocator.clear();
|
||||
}
|
||||
@@ -90,6 +91,10 @@ public class AutoConfiguredCloudSecurityContextIntegrationTests
|
||||
System.setProperty(property, vcapApplicationProperties.getProperty(property)));
|
||||
}
|
||||
|
||||
public static void unsetTestAutoConfiguredPoolServersPortSystemProperty() {
|
||||
System.clearProperty(GEMFIRE_POOL_SERVERS_PROPERTY);
|
||||
}
|
||||
|
||||
@AfterClass
|
||||
public static void cleanUpUsedResources() {
|
||||
vcapApplicationProperties.stringPropertyNames().forEach(System::clearProperty);
|
||||
|
||||
@@ -19,6 +19,7 @@ package org.springframework.geode.boot.autoconfigure.session;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.Properties;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.function.Function;
|
||||
@@ -40,10 +41,12 @@ import org.springframework.data.gemfire.tests.mock.annotation.EnableGemFireMockO
|
||||
import org.springframework.geode.boot.autoconfigure.ContinuousQueryAutoConfiguration;
|
||||
import org.springframework.geode.core.util.ObjectUtils;
|
||||
import org.springframework.mock.env.MockPropertySource;
|
||||
import org.springframework.mock.web.MockServletContext;
|
||||
import org.springframework.session.Session;
|
||||
import org.springframework.session.data.gemfire.config.annotation.web.http.GemFireHttpSessionConfiguration;
|
||||
import org.springframework.session.data.gemfire.config.annotation.web.http.support.SpringSessionGemFireConfigurer;
|
||||
import org.springframework.session.data.gemfire.serialization.SessionSerializer;
|
||||
import org.springframework.web.context.ConfigurableWebApplicationContext;
|
||||
import org.springframework.web.context.support.GenericWebApplicationContext;
|
||||
|
||||
/**
|
||||
@@ -75,12 +78,6 @@ public class CustomConfiguredSessionCachingIntegrationTests extends SpringBootAp
|
||||
|
||||
private static final String SPRING_SESSION_DATA_GEMFIRE_PROPERTY = "spring.session.data.gemfire";
|
||||
|
||||
private volatile Function<ConfigurableApplicationContext, ConfigurableApplicationContext> applicationContextFunction =
|
||||
Function.identity();
|
||||
|
||||
private volatile Function<SpringApplicationBuilder, SpringApplicationBuilder> springApplicationBuilderFunction =
|
||||
Function.identity();
|
||||
|
||||
private static Properties singletonProperties(String propertyName, String propertyValue) {
|
||||
|
||||
Properties properties = new Properties();
|
||||
@@ -90,6 +87,23 @@ public class CustomConfiguredSessionCachingIntegrationTests extends SpringBootAp
|
||||
return properties;
|
||||
}
|
||||
|
||||
private volatile Function<ConfigurableApplicationContext, ConfigurableApplicationContext> applicationContextFunction =
|
||||
Function.identity();
|
||||
|
||||
private volatile Function<ConfigurableApplicationContext, ConfigurableApplicationContext> mockServletContextFunction =
|
||||
applicationContext -> {
|
||||
|
||||
Optional.ofNullable(applicationContext)
|
||||
.filter(ConfigurableWebApplicationContext.class::isInstance)
|
||||
.map(ConfigurableWebApplicationContext.class::cast)
|
||||
.ifPresent(it -> it.setServletContext(new MockServletContext()));
|
||||
|
||||
return applicationContext;
|
||||
};
|
||||
|
||||
private volatile Function<SpringApplicationBuilder, SpringApplicationBuilder> springApplicationBuilderFunction =
|
||||
Function.identity();
|
||||
|
||||
private Function<SpringApplicationBuilder, SpringApplicationBuilder> newSpringBootSessionPropertiesConfigurationFunction() {
|
||||
|
||||
return springApplicationBuilder ->
|
||||
@@ -123,13 +137,14 @@ public class CustomConfiguredSessionCachingIntegrationTests extends SpringBootAp
|
||||
|
||||
@Override
|
||||
protected SpringApplicationBuilder processBeforeBuild(SpringApplicationBuilder springApplicationBuilder) {
|
||||
|
||||
return this.springApplicationBuilderFunction.apply(springApplicationBuilder)
|
||||
.contextClass(GenericWebApplicationContext.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ConfigurableApplicationContext processBeforeRefresh(ConfigurableApplicationContext applicationContext) {
|
||||
return this.applicationContextFunction.apply(applicationContext);
|
||||
return this.mockServletContextFunction.andThen(this.applicationContextFunction).apply(applicationContext);
|
||||
}
|
||||
|
||||
private String springSessionPropertyName(String propertyNameSuffix) {
|
||||
|
||||
Reference in New Issue
Block a user