Browse Source

Trying a plain RestTemplate in an attempt to fix intermittent test failures.

pull/6/head
Ryan Baxter 8 years ago
parent
commit
f552426304
  1. 12
      spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RetryableZuulProxyApplicationTests.java

12
spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RetryableZuulProxyApplicationTests.java

@ -10,7 +10,7 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.embedded.LocalServerPort; import org.springframework.boot.context.embedded.LocalServerPort;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.cloud.netflix.ribbon.RibbonClient; import org.springframework.cloud.netflix.ribbon.RibbonClient;
import org.springframework.cloud.netflix.ribbon.StaticServerList; import org.springframework.cloud.netflix.ribbon.StaticServerList;
import org.springframework.cloud.netflix.zuul.filters.discovery.DiscoveryClientRouteLocator; import org.springframework.cloud.netflix.zuul.filters.discovery.DiscoveryClientRouteLocator;
@ -30,6 +30,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import com.netflix.loadbalancer.Server; import com.netflix.loadbalancer.Server;
import com.netflix.loadbalancer.ServerList; import com.netflix.loadbalancer.ServerList;
@ -47,8 +48,7 @@ import com.netflix.zuul.context.RequestContext;
@DirtiesContext @DirtiesContext
public class RetryableZuulProxyApplicationTests { public class RetryableZuulProxyApplicationTests {
@Autowired private RestTemplate testRestTemplate;
private TestRestTemplate testRestTemplate;
@Autowired @Autowired
@SuppressWarnings("unused") @SuppressWarnings("unused")
@ -58,10 +58,14 @@ public class RetryableZuulProxyApplicationTests {
@SuppressWarnings("unused") @SuppressWarnings("unused")
private RoutesEndpoint endpoint; private RoutesEndpoint endpoint;
@LocalServerPort
private int port;
@Before @Before
public void setTestRequestContext() { public void setTestRequestContext() {
RequestContext context = new RequestContext(); RequestContext context = new RequestContext();
RequestContext.testSetCurrentContext(context); RequestContext.testSetCurrentContext(context);
testRestTemplate = new RestTemplateBuilder().build();
} }
@Test @Test
@ -71,7 +75,7 @@ public class RetryableZuulProxyApplicationTests {
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
ResponseEntity<String> result = testRestTemplate.exchange( ResponseEntity<String> result = testRestTemplate.exchange(
"/simple", HttpMethod.POST, "http://localhost:" + port + "/simple", HttpMethod.POST,
new HttpEntity<>(form, headers), String.class); new HttpEntity<>(form, headers), String.class);
assertEquals(HttpStatus.OK, result.getStatusCode()); assertEquals(HttpStatus.OK, result.getStatusCode());
assertEquals("Posted! {foo=[bar]}", result.getBody()); assertEquals("Posted! {foo=[bar]}", result.getBody());

Loading…
Cancel
Save