INT-2524 - Don't Map Transfer-Encoding Header

For reference see: https://jira.springsource.org/browse/INT-2524

INT-2524 - Add some more tests
This commit is contained in:
Gunnar Hillert
2012-08-29 17:21:27 -04:00
committed by Gary Russell
parent 3c15f376db
commit 4c77b7c93b
3 changed files with 175 additions and 113 deletions

View File

@@ -46,6 +46,7 @@ import org.springframework.util.CollectionUtils;
/**
* @author Oleg Zhurakousky
* @author Mark Fisher
* @author Gunnar Hillert
* @since 2.0.1
*/
public class DefaultHttpHeaderMapperFromMessageInboundTests {
@@ -273,6 +274,46 @@ public class DefaultHttpHeaderMapperFromMessageInboundTests {
assertEquals(new URI("http://foo.com").toString(), headers.getLocation().toString());
}
// Transfer Encoding tests
@Test
public void validateTransferEncodingNotMappedFromMessageHeaders() throws Exception{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.inboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Transfer-Encoding", "chunked");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertTrue(String.format("'Headers' is not empty. It contains '%s' element(s).",
headers.size()), headers.isEmpty());
}
@Test
public void validateTransferEncodingMappedFromHttpHeaders() throws Exception{
DefaultHttpHeaderMapper mapper = new DefaultHttpHeaderMapper();
mapper.setInboundHeaderNames(new String[] {"Transfer-Encoding"});
HttpHeaders headers = new HttpHeaders();
headers.set("Transfer-Encoding", "chunked");
Map<String, ?> result = mapper.toHeaders(headers);
assertEquals(1, result.size());
assertEquals("chunked", result.get("Transfer-Encoding"));
}
@Test
public void validateTransferEncodingNotMappedFromHttpHeadersByDefault() throws Exception{
DefaultHttpHeaderMapper mapper = new DefaultHttpHeaderMapper();
HttpHeaders headers = new HttpHeaders();
headers.set("Transfer-Encoding", "chunked");
Map<String, ?> result = mapper.toHeaders(headers);
assertTrue(String.format("'result' is not empty. It contains '%s' element(s).",
result.size()), result.isEmpty());
}
// Pragma tested as part of DefaultHttpHeaderMapperFromMessageOutboundTests
@Test

View File

@@ -53,10 +53,10 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept", "bar");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
}
@Test
public void validateAcceptHeaderSingleString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -64,12 +64,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("Accept", "bar/foo");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("bar", headers.getAccept().get(0).getType());
assertEquals("foo", headers.getAccept().get(0).getSubtype());
}
@Test
public void validateAcceptHeaderSingleMediaType(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -77,80 +77,80 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("Accept", new MediaType("bar", "foo"));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("bar", headers.getAccept().get(0).getType());
assertEquals("foo", headers.getAccept().get(0).getSubtype());
}
@Test
public void validateAcceptHeaderMultipleAsDelimitedString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept", "bar/foo, text/xml");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAccept().size());
assertEquals("bar/foo", headers.getAccept().get(0).toString());
assertEquals("text/xml", headers.getAccept().get(1).toString());
}
@Test
public void validateAcceptHeaderMultipleAsStringArray(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept", new String[]{"bar/foo", "text/xml"});
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAccept().size());
assertEquals("bar/foo", headers.getAccept().get(0).toString());
assertEquals("text/xml", headers.getAccept().get(1).toString());
}
@Test
public void validateAcceptHeaderMultipleAsStringCollection(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept", CollectionUtils.arrayToList(new String[]{"bar/foo", "text/xml"}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAccept().size());
assertEquals("bar/foo", headers.getAccept().get(0).toString());
assertEquals("text/xml", headers.getAccept().get(1).toString());
}
@Test
public void validateAcceptHeaderMultipleAsStringCollectionCaseInsensitive(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("acCePt", CollectionUtils.arrayToList(new String[]{"bar/foo", "text/xml"}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAccept().size());
assertEquals("bar/foo", headers.getAccept().get(0).toString());
assertEquals("text/xml", headers.getAccept().get(1).toString());
}
@Test
public void validateAcceptHeaderMultipleAsMediatypeCollection(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept",
messageHeaders.put("Accept",
CollectionUtils.arrayToList(new MediaType[]{new MediaType("bar", "foo"), new MediaType("text", "xml")}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAccept().size());
assertEquals("bar/foo", headers.getAccept().get(0).toString());
assertEquals("text/xml", headers.getAccept().get(1).toString());
}
// ACCEPT_CHARSET tests
@Test(expected=UnsupportedCharsetException.class)
public void validateAcceptCharsetHeaderWithWrongCharset(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -159,26 +159,26 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
}
@Test
public void validateAcceptCharsetHeaderSingleString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", "UTF-8");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(1, headers.getAcceptCharset().size());
assertEquals("UTF-8", headers.getAcceptCharset().get(0).displayName());
}
@Test
public void validateAcceptCharsetHeaderSingleCharset(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", Charset.forName("UTF-8"));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(1, headers.getAcceptCharset().size());
assertEquals("UTF-8", headers.getAcceptCharset().get(0).displayName());
@@ -190,26 +190,26 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", "UTF-8, ISO-8859-1");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAcceptCharset().size());
// validate contains since the order is not enforced
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
}
@Test
public void validateAcceptCharsetHeaderMultipleAsStringArray(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", new String[]{"UTF-8", "ISO-8859-1"});
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAcceptCharset().size());
// validate contains since the order is not enforced
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
}
@Test
@@ -218,12 +218,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", new Charset[]{ Charset.forName("UTF-8"), Charset.forName("ISO-8859-1") });
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAcceptCharset().size());
// validate contains since the order is not enforced
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
}
@Test
@@ -232,114 +232,114 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset", CollectionUtils.arrayToList(new String[]{"UTF-8", "ISO-8859-1"}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAcceptCharset().size());
// validate contains since the order is not enforced
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
}
@Test
public void validateAcceptCharsetHeaderMultipleAsCollectionOfCharsets(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Accept-Charset",
messageHeaders.put("Accept-Charset",
CollectionUtils.arrayToList(new Charset[]{Charset.forName("UTF-8"), Charset.forName("ISO-8859-1")}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getAcceptCharset().size());
// validate contains since the order is not enforced
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("UTF-8")));
assertTrue(headers.getAcceptCharset().contains(Charset.forName("ISO-8859-1")));
}
// Cache-Control tests
@Test
public void validateCacheControl(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Cache-Control", "foo");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("foo", headers.getCacheControl());
}
// Content-Length tests
@Test
public void validateContentLengthAsString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Length", "1");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(1, headers.getContentLength());
}
@Test
public void validateContentLengthAsNumber(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Length", 1);
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(1, headers.getContentLength());
}
@Test(expected=NumberFormatException.class)
public void validateContentLengthAsNonNumericString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Length", "foo");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
}
// Content-Type test
@Test(expected=IllegalArgumentException.class)
public void validateContentTypeWrongValue(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Type", "foo");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
}
@Test
public void validateContentTypeAsString(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Type", "text/html");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("text", headers.getContentType().getType());
assertEquals("html", headers.getContentType().getSubtype());
}
@Test
public void validateContentTypeAsMediaType(){
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Content-Type", new MediaType("text", "html"));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("text", headers.getContentType().getType());
assertEquals("html", headers.getContentType().getSubtype());
}
// Date test
@Test
public void validateDateAsNumber() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -347,12 +347,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("Date", 12345678);
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getDate());
}
@Test
public void validateDateAsString() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -360,9 +360,9 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("Date", "12345678");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getDate());
}
@Test
@@ -372,14 +372,14 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("Date", new Date(12345678));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getDate());
}
// If-Modified-Since tests
@Test
public void validateIfModifiedSinceAsNumber() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -387,12 +387,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-Modified-Since", 12345678);
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getIfNotModifiedSince());
}
@Test
public void validateIfModifiedSinceAsString() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -400,9 +400,9 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-Modified-Since", "12345678");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getIfNotModifiedSince());
}
@Test
@@ -412,14 +412,14 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-Modified-Since", new Date(12345678));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
assertEquals(simpleDateFormat.parse("Thu, 01 Jan 1970 03:25:45 GMT").getTime(), headers.getIfNotModifiedSince());
}
// If-None-Match
@Test
public void validateIfNoneMatch() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -427,11 +427,11 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-None-Match", "1234567");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(1, headers.getIfNoneMatch().size());
assertEquals("1234567", headers.getIfNoneMatch().get(0));
}
@Test
public void validateIfNoneMatchAsDelimitedString() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -439,12 +439,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-None-Match", "1234567, 123");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getIfNoneMatch().size());
assertEquals("1234567", headers.getIfNoneMatch().get(0));
assertEquals("123", headers.getIfNoneMatch().get(1));
}
@Test
public void validateIfNoneMatchAsStringArray() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
@@ -452,7 +452,7 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-None-Match", new String[]{"1234567", "123"});
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getIfNoneMatch().size());
assertEquals("1234567", headers.getIfNoneMatch().get(0));
assertEquals("123", headers.getIfNoneMatch().get(1));
@@ -465,7 +465,7 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-None-Match", "1234567, 123");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getIfNoneMatch().size());
assertEquals("1234567", headers.getIfNoneMatch().get(0));
assertEquals("123", headers.getIfNoneMatch().get(1));
@@ -478,12 +478,12 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
messageHeaders.put("If-None-Match", CollectionUtils.arrayToList(new String[]{"1234567", "123"}));
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals(2, headers.getIfNoneMatch().size());
assertEquals("1234567", headers.getIfNoneMatch().get(0));
assertEquals("123", headers.getIfNoneMatch().get(1));
}
// Pragma tests
@Test
public void validatePragma() throws ParseException{
@@ -494,9 +494,32 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertEquals("foo", headers.getPragma());
}
// Transfer-Encoding tests
@Test
public void validateTransferEncoding() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
Map<String, Object> messageHeaders = new HashMap<String, Object>();
messageHeaders.put("Transfer-Encoding", "chunked");
HttpHeaders headers = new HttpHeaders();
mapper.fromHeaders(new MessageHeaders(messageHeaders), headers);
assertNull(headers.get("Transfer-Encoding"));
}
@Test
public void validateTransferEncodingToHeaders() throws ParseException{
HeaderMapper<HttpHeaders> mapper = DefaultHttpHeaderMapper.outboundMapper();
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.set("Transfer-Encoding", "chunked");
Map<String, ?> messageHeaders = mapper.toHeaders(httpHeaders);
assertEquals(0, messageHeaders.size());
}
// Custom headers
@Test
public void validateCustomHeaderWithNoHeaderNames() throws ParseException{
DefaultHttpHeaderMapper mapper = new DefaultHttpHeaderMapper();
@@ -507,7 +530,7 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
assertNull(headers.get("foo"));
assertNull(headers.get("X-foo"));
}
@Test
public void validateCustomHeaderWithHeaderNames() throws ParseException{
DefaultHttpHeaderMapper mapper = new DefaultHttpHeaderMapper();
@@ -592,7 +615,7 @@ public class DefaultHttpHeaderMapperFromMessageOutboundTests {
assertEquals(1, result.size());
assertEquals("x-foo-value", result.get("x-foo"));
}
@Test
public void validateCustomHeaderWithStandardPrefixSameCase() throws Exception{
DefaultHttpHeaderMapper mapper = new DefaultHttpHeaderMapper();