Merge pull request #11063 from Vedran Pavić

* gh-11063:
  Polish "Improve Spring Session auto-configuration tests"
  Improve Spring Session auto-configuration tests
This commit is contained in:
Andy Wilkinson
2017-11-20 17:13:59 +00:00
2 changed files with 7 additions and 2 deletions

View File

@@ -27,6 +27,7 @@ import org.springframework.context.annotation.Conditional;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.session.SessionRepository;
import org.springframework.session.data.mongo.MongoOperationsSessionRepository;
import org.springframework.session.data.mongo.config.annotation.web.http.MongoHttpSessionConfiguration;
/**
@@ -36,7 +37,7 @@ import org.springframework.session.data.mongo.config.annotation.web.http.MongoHt
* @author Stephane Nicoll
*/
@Configuration
@ConditionalOnClass(MongoHttpSessionConfiguration.class)
@ConditionalOnClass({ MongoOperations.class, MongoOperationsSessionRepository.class })
@ConditionalOnMissingBean(SessionRepository.class)
@ConditionalOnBean(MongoOperations.class)
@Conditional(ServletSessionCondition.class)

View File

@@ -21,11 +21,13 @@ import org.springframework.boot.test.context.assertj.AssertableReactiveWebApplic
import org.springframework.boot.test.context.assertj.AssertableWebApplicationContext;
import org.springframework.session.ReactiveSessionRepository;
import org.springframework.session.SessionRepository;
import org.springframework.session.web.http.SessionRepositoryFilter;
import org.springframework.web.server.session.WebSessionManager;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Share test utilities for {@link SessionAutoConfiguration} tests.
* Shared test utilities for {@link SessionAutoConfiguration} tests.
*
* @author Stephane Nicoll
*/
@@ -33,6 +35,7 @@ public abstract class AbstractSessionAutoConfigurationTests {
protected <T extends SessionRepository<?>> T validateSessionRepository(
AssertableWebApplicationContext context, Class<T> type) {
assertThat(context).hasSingleBean(SessionRepositoryFilter.class);
assertThat(context).hasSingleBean(SessionRepository.class);
SessionRepository<?> repository = context.getBean(SessionRepository.class);
assertThat(repository).as("Wrong session repository type").isInstanceOf(type);
@@ -46,6 +49,7 @@ public abstract class AbstractSessionAutoConfigurationTests {
protected <T extends ReactiveSessionRepository<?>> T validateSessionRepository(
AssertableReactiveWebApplicationContext context, Class<T> type) {
assertThat(context).hasSingleBean(WebSessionManager.class);
assertThat(context).hasSingleBean(ReactiveSessionRepository.class);
ReactiveSessionRepository<?> repository = context
.getBean(ReactiveSessionRepository.class);