Make WebTestClient auto-config back off without CodecCustomizer

Fixes gh-46678
This commit is contained in:
Andy Wilkinson
2025-08-19 17:46:06 +01:00
parent 319aab2d3a
commit fb8a8e5bb0
2 changed files with 9 additions and 1 deletions
@@ -44,7 +44,7 @@ import org.springframework.web.server.WebHandler;
*/
@AutoConfiguration(afterName = { "org.springframework.boot.http.codec.autoconfigure.CodecsAutoConfiguration",
"org.springframework.boot.webflux.autoconfigure.WebFluxAutoConfiguration" })
@ConditionalOnClass({ WebClient.class, WebTestClient.class })
@ConditionalOnClass({ CodecCustomizer.class, WebClient.class, WebTestClient.class })
@Import(WebTestClientSecurityConfiguration.class)
@EnableConfigurationProperties
public final class WebTestClientAutoConfiguration {
@@ -119,6 +119,14 @@ class WebTestClientAutoConfigurationTests {
});
}
@Test
void shouldBackOffWithoutCodecCustomizer() {
FilteredClassLoader classLoader = new FilteredClassLoader(CodecCustomizer.class);
this.contextRunner.withUserConfiguration(BaseConfiguration.class)
.withClassLoader(classLoader)
.run((context) -> assertThat(context).doesNotHaveBean(WebTestClient.class));
}
@Configuration(proxyBeanMethods = false)
static class BaseConfiguration {