diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java index 5c09e8e2..4ea33385 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java @@ -95,6 +95,17 @@ public class SpringDecoderTests extends FeignClientFactoryBean { assertEquals("first hello didn't match", "hello world 1", hellos.get(0)); } + @Test + public void testResponseEntityVoid() { + ResponseEntity response = testClient().getHelloVoid(); + assertNotNull("response was null", response); + List headerVals = response.getHeaders().get("X-test-header"); + assertNotNull("headerVals was null", headerVals); + assertEquals("headerVals size was wrong", 1, headerVals.size()); + String header = headerVals.get(0); + assertEquals("header was wrong", "myval", header); + } + @Data @AllArgsConstructor @NoArgsConstructor @@ -106,6 +117,9 @@ public class SpringDecoderTests extends FeignClientFactoryBean { @RequestMapping(method = RequestMethod.GET, value = "/helloresponse") public ResponseEntity getHelloResponse(); + @RequestMapping(method = RequestMethod.GET, value = "/hellovoid") + public ResponseEntity getHelloVoid(); + @RequestMapping(method = RequestMethod.GET, value = "/hello") public Hello getHello(); @@ -126,6 +140,11 @@ public class SpringDecoderTests extends FeignClientFactoryBean { return ResponseEntity.ok(new Hello("hello world via response")); } + @Override + public ResponseEntity getHelloVoid() { + return ResponseEntity.noContent().header("X-test-header", "myval").build(); + } + @Override public Hello getHello() { return new Hello("hello world 1");