Make TestRestTemplate not extend RestTemplate
Update TestRestTemplate so that it no longer directly extends RestTemplate. Prior to this commit it was possible that TestRestTemplate could interfere with user defined RestTemplate beans. TestRestTemplate offers the same methods as RestTemplate so should be a drop-in replacement. If access is needed to the actual underlying template the `getRestTemplate()` method should be used. Fixes gh-5915
This commit is contained in:
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -60,7 +60,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationCustomFilterContextPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -59,7 +59,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationCustomFilterPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -59,7 +59,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationCustomObjectMapperProviderTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -60,7 +60,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationCustomServletContextPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -60,7 +60,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationCustomServletPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -37,13 +37,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -58,7 +58,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationDefaultFilterPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -37,13 +37,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -59,7 +59,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationDefaultServletPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -38,13 +38,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -59,7 +59,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationObjectMapperProviderTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -37,13 +37,13 @@ import org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoCo
|
||||
import org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -58,7 +58,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
public class JerseyAutoConfigurationWithoutApplicationPathTests {
|
||||
|
||||
@Autowired
|
||||
private RestTemplate restTemplate;
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
||||
|
||||
@@ -94,7 +94,6 @@ import org.springframework.util.MultiValueMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -327,7 +326,7 @@ public class OAuth2AutoConfigurationTests {
|
||||
private void verifyAuthentication(ClientDetails config, HttpStatus finalStatus) {
|
||||
String baseUrl = "http://localhost:"
|
||||
+ this.context.getEmbeddedServletContainer().getPort();
|
||||
RestTemplate rest = new TestRestTemplate();
|
||||
TestRestTemplate rest = new TestRestTemplate();
|
||||
// First, verify the web endpoint can't be reached
|
||||
assertEndpointUnauthorized(baseUrl, rest);
|
||||
// Since we can't reach it, need to collect an authorization token
|
||||
@@ -371,7 +370,7 @@ public class OAuth2AutoConfigurationTests {
|
||||
return body;
|
||||
}
|
||||
|
||||
private void assertEndpointUnauthorized(String baseUrl, RestTemplate rest) {
|
||||
private void assertEndpointUnauthorized(String baseUrl, TestRestTemplate rest) {
|
||||
URI uri = URI.create(baseUrl + "/secured");
|
||||
ResponseEntity<String> entity = rest
|
||||
.exchange(new RequestEntity<Void>(HttpMethod.GET, uri), String.class);
|
||||
|
||||
@@ -34,7 +34,6 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -51,7 +50,7 @@ public class RemappedErrorViewIntegrationTests {
|
||||
@LocalServerPort
|
||||
private int port;
|
||||
|
||||
private RestTemplate template = new TestRestTemplate();
|
||||
private TestRestTemplate template = new TestRestTemplate();
|
||||
|
||||
@Test
|
||||
public void directAccessToErrorPage() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user