Skip to content

Commit 06fd384

Browse files
committed
Include WebSecurityCustomizer components in WebMvcTest
This commit also tests that WebSecurityConfigurer components are included. They include was already there but the functionality was untested. Fixes gh-47255
1 parent e58c897 commit 06fd384

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/web/servlet/WebMvcTypeExcludeFilter.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ public final class WebMvcTypeExcludeFilter extends StandardAnnotationCustomizabl
5353

5454
private static final String[] OPTIONAL_INCLUDES = { "com.fasterxml.jackson.databind.Module",
5555
"org.springframework.security.config.annotation.web.WebSecurityConfigurer",
56+
"org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer",
5657
"org.springframework.security.web.SecurityFilterChain", "org.thymeleaf.dialect.IDialect" };
5758

5859
private static final Set<Class<?>> DEFAULT_INCLUDES;

spring-boot-project/spring-boot-test-autoconfigure/src/test/java/org/springframework/boot/test/autoconfigure/web/servlet/WebMvcTypeExcludeFilterTests.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
import org.springframework.core.type.classreading.MetadataReaderFactory;
3030
import org.springframework.core.type.classreading.SimpleMetadataReaderFactory;
3131
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
32+
import org.springframework.security.config.annotation.web.WebSecurityConfigurer;
33+
import org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer;
3234
import org.springframework.security.web.SecurityFilterChain;
3335
import org.springframework.stereotype.Controller;
3436
import org.springframework.stereotype.Repository;
@@ -61,6 +63,8 @@ void matchWhenHasNoControllers() throws Exception {
6163
assertThat(excludes(filter, ExampleService.class)).isTrue();
6264
assertThat(excludes(filter, ExampleRepository.class)).isTrue();
6365
assertThat(excludes(filter, SecurityFilterChain.class)).isFalse();
66+
assertThat(excludes(filter, WebSecurityConfigurer.class)).isFalse();
67+
assertThat(excludes(filter, WebSecurityCustomizer.class)).isFalse();
6468
assertThat(excludes(filter, ExampleHandlerInterceptor.class)).isFalse();
6569
assertThat(excludes(filter, ExampleModule.class)).isFalse();
6670
assertThat(excludes(filter, ExampleDialect.class)).isFalse();
@@ -78,6 +82,8 @@ void matchWhenHasController() throws Exception {
7882
assertThat(excludes(filter, ExampleService.class)).isTrue();
7983
assertThat(excludes(filter, ExampleRepository.class)).isTrue();
8084
assertThat(excludes(filter, SecurityFilterChain.class)).isFalse();
85+
assertThat(excludes(filter, WebSecurityConfigurer.class)).isFalse();
86+
assertThat(excludes(filter, WebSecurityCustomizer.class)).isFalse();
8187
assertThat(excludes(filter, ExampleHandlerInterceptor.class)).isFalse();
8288
assertThat(excludes(filter, ExampleModule.class)).isFalse();
8389
assertThat(excludes(filter, ExampleDialect.class)).isFalse();
@@ -95,6 +101,8 @@ void matchNotUsingDefaultFilters() throws Exception {
95101
assertThat(excludes(filter, ExampleService.class)).isTrue();
96102
assertThat(excludes(filter, ExampleRepository.class)).isTrue();
97103
assertThat(excludes(filter, SecurityFilterChain.class)).isTrue();
104+
assertThat(excludes(filter, WebSecurityConfigurer.class)).isTrue();
105+
assertThat(excludes(filter, WebSecurityCustomizer.class)).isTrue();
98106
assertThat(excludes(filter, ExampleHandlerInterceptor.class)).isTrue();
99107
assertThat(excludes(filter, ExampleModule.class)).isTrue();
100108
assertThat(excludes(filter, ExampleDialect.class)).isTrue();
@@ -128,6 +136,8 @@ void matchWithExcludeFilter() throws Exception {
128136
assertThat(excludes(filter, ExampleService.class)).isTrue();
129137
assertThat(excludes(filter, ExampleRepository.class)).isTrue();
130138
assertThat(excludes(filter, SecurityFilterChain.class)).isFalse();
139+
assertThat(excludes(filter, WebSecurityConfigurer.class)).isFalse();
140+
assertThat(excludes(filter, WebSecurityCustomizer.class)).isFalse();
131141
assertThat(excludes(filter, ExampleHandlerInterceptor.class)).isFalse();
132142
assertThat(excludes(filter, ExampleModule.class)).isFalse();
133143
assertThat(excludes(filter, ExampleDialect.class)).isFalse();

0 commit comments

Comments
 (0)