Skip to content

Commit fb8a8e5

Browse files
committed
Make WebTestClient auto-config back off without CodecCustomizer
Fixes gh-46678
1 parent 319aab2 commit fb8a8e5

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/web/reactive/WebTestClientAutoConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
*/
4545
@AutoConfiguration(afterName = { "org.springframework.boot.http.codec.autoconfigure.CodecsAutoConfiguration",
4646
"org.springframework.boot.webflux.autoconfigure.WebFluxAutoConfiguration" })
47-
@ConditionalOnClass({ WebClient.class, WebTestClient.class })
47+
@ConditionalOnClass({ CodecCustomizer.class, WebClient.class, WebTestClient.class })
4848
@Import(WebTestClientSecurityConfiguration.class)
4949
@EnableConfigurationProperties
5050
public final class WebTestClientAutoConfiguration {

module/spring-boot-test-autoconfigure/src/test/java/org/springframework/boot/test/autoconfigure/web/reactive/WebTestClientAutoConfigurationTests.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,14 @@ void shouldNotApplySpringSecurityConfigurerWhenSpringSecurityNotOnClassPath() {
119119
});
120120
}
121121

122+
@Test
123+
void shouldBackOffWithoutCodecCustomizer() {
124+
FilteredClassLoader classLoader = new FilteredClassLoader(CodecCustomizer.class);
125+
this.contextRunner.withUserConfiguration(BaseConfiguration.class)
126+
.withClassLoader(classLoader)
127+
.run((context) -> assertThat(context).doesNotHaveBean(WebTestClient.class));
128+
}
129+
122130
@Configuration(proxyBeanMethods = false)
123131
static class BaseConfiguration {
124132

0 commit comments

Comments
 (0)