@ -18,6 +18,7 @@ package org.springframework.boot.web.client;
@@ -18,6 +18,7 @@ package org.springframework.boot.web.client;
import java.net.URI ;
import java.nio.charset.StandardCharsets ;
import java.time.Duration ;
import java.util.Arrays ;
import java.util.Collections ;
import java.util.Set ;
@ -30,6 +31,7 @@ import org.mockito.InOrder;
@@ -30,6 +31,7 @@ import org.mockito.InOrder;
import org.mockito.Mock ;
import org.mockito.junit.jupiter.MockitoExtension ;
import org.springframework.boot.http.client.ClientHttpRequestFactorySettings ;
import org.springframework.http.HttpHeaders ;
import org.springframework.http.HttpMethod ;
import org.springframework.http.MediaType ;
@ -272,9 +274,8 @@ class RestTemplateBuilderTests {
@@ -272,9 +274,8 @@ class RestTemplateBuilderTests {
@Test
void requestFactoryWhenFunctionIsNullShouldThrowException ( ) {
assertThatIllegalArgumentException ( )
. isThrownBy ( ( ) - > this . builder
. requestFactory ( ( Function < ClientHttpRequestFactorySettings , ClientHttpRequestFactory > ) null ) )
assertThatIllegalArgumentException ( ) . isThrownBy ( ( ) - > this . builder . requestFactory (
( Function < org . springframework . boot . web . client . ClientHttpRequestFactorySettings , ClientHttpRequestFactory > ) null ) )
. withMessageContaining ( "RequestFactoryFunction must not be null" ) ;
}
@ -343,6 +344,14 @@ class RestTemplateBuilderTests {
@@ -343,6 +344,14 @@ class RestTemplateBuilderTests {
assertThat ( request . getHeaders ( ) ) . contains ( entry ( "spring" , Collections . singletonList ( "boot" ) ) ) ;
}
@Test
void requestFactorySettingsAppliesSettings ( ) {
ClientHttpRequestFactorySettings settings = ClientHttpRequestFactorySettings . defaults ( )
. withConnectTimeout ( Duration . ofSeconds ( 1 ) ) ;
RestTemplate template = this . builder . requestFactorySettings ( settings ) . build ( ) ;
assertThat ( template . getRequestFactory ( ) ) . extracting ( "connectTimeout" ) . isEqualTo ( 1000L ) ;
}
@Test
void requestCustomizersAddsCustomizers ( ) {
RestTemplate template = this . builder