Remove TestRestTemplate constructors taking template args

As discussed in gh-11872, `TestRestTemplate` constructor variants taking
a `RestTemplate` argument are confusing since the main goal of that
class is to mutate `RestTemplate`.

This commit removes all those constructor variants and replaces them
with `RestTemplateBuilder` arguments when possible.

Closes gh-11872
This commit is contained in:
Brian Clozel
2018-02-12 16:44:32 +01:00
parent eec3eed5f5
commit 2be0c46562
5 changed files with 27 additions and 18 deletions

View File

@@ -85,7 +85,7 @@ public class TestRestTemplateTests {
@Test
public void getRootUriRootUriSetViaRestTemplateBuilder() {
String rootUri = "http://example.com";
RestTemplate delegate = new RestTemplateBuilder().rootUri(rootUri).build();
RestTemplateBuilder delegate = new RestTemplateBuilder().rootUri(rootUri);
assertThat(new TestRestTemplate(delegate).getRootUri()).isEqualTo(rootUri);
}
@@ -127,7 +127,9 @@ public class TestRestTemplateTests {
RestTemplate delegate = mock(RestTemplate.class);
given(delegate.getUriTemplateHandler())
.willReturn(new DefaultUriBuilderFactory());
final TestRestTemplate restTemplate = new TestRestTemplate(delegate);
RestTemplateBuilder builder = mock(RestTemplateBuilder.class);
given(builder.build()).willReturn(delegate);
final TestRestTemplate restTemplate = new TestRestTemplate(builder);
ReflectionUtils.doWithMethods(RestOperations.class, new MethodCallback() {
@Override
@@ -338,9 +340,8 @@ public class TestRestTemplateTests {
.create("http://localhost:8080/a/b/c.txt?param=%7Bsomething%7D");
given(requestFactory.createRequest(eq(absoluteUri), any(HttpMethod.class)))
.willReturn(request);
RestTemplate delegate = new RestTemplate();
TestRestTemplate template = new TestRestTemplate(delegate);
delegate.setRequestFactory(requestFactory);
TestRestTemplate template = new TestRestTemplate();
template.getRestTemplate().setRequestFactory(requestFactory);
LocalHostUriTemplateHandler uriTemplateHandler = new LocalHostUriTemplateHandler(
new MockEnvironment());
template.setUriTemplateHandler(uriTemplateHandler);