Polishing tests
This commit is contained in:
parent
8d5a6520ce
commit
c4e362500b
|
@ -63,8 +63,10 @@ public class ByteArrayHttpMessageConverterTests {
|
|||
byte[] body = new byte[]{0x1, 0x2};
|
||||
converter.write(body, null, outputMessage);
|
||||
assertThat(outputMessage.getBodyAsBytes()).as("Invalid result").isEqualTo(body);
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "octet-stream"));
|
||||
assertThat(outputMessage.getHeaders().getContentLength()).as("Invalid content-length").isEqualTo(2);
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_OCTET_STREAM);
|
||||
assertThat(outputMessage.getHeaders().getContentLength())
|
||||
.as("Invalid content-length").isEqualTo(2);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -147,9 +147,12 @@ public class FormHttpMessageConverterTests {
|
|||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
this.converter.write(body, APPLICATION_FORM_URLENCODED, outputMessage);
|
||||
|
||||
assertThat(outputMessage.getBodyAsString(StandardCharsets.UTF_8)).as("Invalid result").isEqualTo("name+1=value+1&name+2=value+2%2B1&name+2=value+2%2B2&name+3");
|
||||
assertThat(outputMessage.getHeaders().getContentType().toString()).as("Invalid content-type").isEqualTo("application/x-www-form-urlencoded;charset=UTF-8");
|
||||
assertThat(outputMessage.getHeaders().getContentLength()).as("Invalid content-length").isEqualTo(outputMessage.getBodyAsBytes().length);
|
||||
assertThat(outputMessage.getBodyAsString(StandardCharsets.UTF_8))
|
||||
.as("Invalid result").isEqualTo("name+1=value+1&name+2=value+2%2B1&name+2=value+2%2B2&name+3");
|
||||
assertThat(outputMessage.getHeaders().getContentType().toString())
|
||||
.as("Invalid content-type").isEqualTo("application/x-www-form-urlencoded;charset=UTF-8");
|
||||
assertThat(outputMessage.getHeaders().getContentLength())
|
||||
.as("Invalid content-length").isEqualTo(outputMessage.getBodyAsBytes().length);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
@ -106,8 +106,10 @@ public class ResourceHttpMessageConverterTests {
|
|||
Resource body = new ClassPathResource("logo.jpg", getClass());
|
||||
converter.write(body, null, outputMessage);
|
||||
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(MediaType.IMAGE_JPEG);
|
||||
assertThat(outputMessage.getHeaders().getContentLength()).as("Invalid content-length").isEqualTo(body.getFile().length());
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.IMAGE_JPEG);
|
||||
assertThat(outputMessage.getHeaders().getContentLength())
|
||||
.as("Invalid content-length").isEqualTo(body.getFile().length());
|
||||
}
|
||||
|
||||
@Test // SPR-10848
|
||||
|
|
|
@ -138,7 +138,8 @@ public class GsonHttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":[1,2]")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
@ -161,7 +162,8 @@ public class GsonHttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":[1,2]")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -177,7 +179,7 @@ public class GsonHttpMessageConverterTests {
|
|||
@Test
|
||||
public void readInvalidJson() throws IOException {
|
||||
String body = "FooBar";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(MyBean.class, inputMessage));
|
||||
|
|
|
@ -138,7 +138,8 @@ public class JsonbHttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":[1,2]")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
@ -161,7 +162,8 @@ public class JsonbHttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":[1,2]")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "json", utf8));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
@ -160,7 +160,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
"\"string\":\"Foo\"," +
|
||||
"\"bool\":true," +
|
||||
"\"fraction\":42.0}";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
HashMap<String, Object> result = (HashMap<String, Object>) converter.read(HashMap.class, inputMessage);
|
||||
assertThat(result.get("string")).isEqualTo("Foo");
|
||||
|
@ -192,7 +192,8 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":\"AQI=\"")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(MediaType.APPLICATION_JSON);
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_JSON);
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
@ -214,7 +215,8 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
assertThat(result.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
|
||||
assertThat(result.contains("\"bool\":true")).isTrue();
|
||||
assertThat(result.contains("\"bytes\":\"AQI=\"")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(MediaType.APPLICATION_JSON);
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_JSON);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -230,16 +232,16 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
@Test
|
||||
public void readInvalidJson() throws IOException {
|
||||
String body = "FooBar";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
converter.read(MyBean.class, inputMessage));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class)
|
||||
.isThrownBy(() -> converter.read(MyBean.class, inputMessage));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void readValidJsonWithUnknownProperty() throws IOException {
|
||||
String body = "{\"string\":\"string\",\"unknownProperty\":\"value\"}";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
converter.read(MyBean.class, inputMessage);
|
||||
// Assert no HttpMessageNotReadableException is thrown
|
||||
|
@ -266,7 +268,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
"\"string\":\"Foo\"," +
|
||||
"\"bool\":true," +
|
||||
"\"fraction\":42.0}]";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
|
||||
List<MyBean> results = (List<MyBean>) converter.read(List.class, inputMessage);
|
||||
|
@ -280,7 +282,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
assertThat(result.getBytes()).isEqualTo(new byte[] {0x1, 0x2});
|
||||
|
||||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
converter.write(results, new MediaType("application", "json"), outputMessage);
|
||||
converter.write(results, MediaType.APPLICATION_JSON, outputMessage);
|
||||
JSONAssert.assertEquals(body, outputMessage.getBodyAsString(StandardCharsets.UTF_8), true);
|
||||
}
|
||||
|
||||
|
@ -296,8 +298,8 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
"\"string\":\"Foo\"," +
|
||||
"\"bool\":true," +
|
||||
"\"fraction\":42.0}]";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_JSON);
|
||||
|
||||
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
|
||||
List<MyBean> results = (List<MyBean>) converter.read(beansList.getType(), null, inputMessage);
|
||||
|
@ -311,7 +313,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
assertThat(result.getBytes()).isEqualTo(new byte[] {0x1, 0x2});
|
||||
|
||||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
converter.write(results, beansList.getType(), new MediaType("application", "json"), outputMessage);
|
||||
converter.write(results, beansList.getType(), MediaType.APPLICATION_JSON, outputMessage);
|
||||
JSONAssert.assertEquals(body, outputMessage.getBodyAsString(StandardCharsets.UTF_8), true);
|
||||
}
|
||||
|
||||
|
@ -328,8 +330,8 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
"\"string\":\"Foo\"," +
|
||||
"\"bool\":true," +
|
||||
"\"fraction\":42.0}]";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_JSON);
|
||||
|
||||
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
|
||||
List<MyBean> results = (List<MyBean>) converter.read(beansList.getType(), null, inputMessage);
|
||||
|
@ -343,7 +345,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
assertThat(result.getBytes()).isEqualTo(new byte[] {0x1, 0x2});
|
||||
|
||||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
converter.write(results, baseList.getType(), new MediaType("application", "json"), outputMessage);
|
||||
converter.write(results, baseList.getType(), MediaType.APPLICATION_JSON, outputMessage);
|
||||
JSONAssert.assertEquals(body, outputMessage.getBodyAsString(StandardCharsets.UTF_8), true);
|
||||
}
|
||||
|
||||
|
@ -489,7 +491,7 @@ public class MappingJackson2HttpMessageConverterTests {
|
|||
public void readWithNoDefaultConstructor() throws Exception {
|
||||
String body = "{\"property1\":\"foo\",\"property2\":\"bar\"}";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "json"));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_JSON);
|
||||
assertThatExceptionOfType(HttpMessageConversionException.class).isThrownBy(() ->
|
||||
converter.read(BeanWithNoDefaultConstructor.class, inputMessage))
|
||||
.withMessageStartingWith("Type definition error:");
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.springframework.http.converter.protobuf;
|
|||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import com.google.protobuf.ExtensionRegistry;
|
||||
import com.google.protobuf.Message;
|
||||
|
@ -158,7 +158,7 @@ public class ProtobufHttpMessageConverterTests {
|
|||
|
||||
assertThat(outputMessage.getHeaders().getContentType()).isEqualTo(contentType);
|
||||
|
||||
final String body = outputMessage.getBodyAsString(Charset.forName("UTF-8"));
|
||||
final String body = outputMessage.getBodyAsString(StandardCharsets.UTF_8);
|
||||
assertThat(body.isEmpty()).as("body is empty").isFalse();
|
||||
|
||||
Msg.Builder builder = Msg.newBuilder();
|
||||
|
@ -182,7 +182,7 @@ public class ProtobufHttpMessageConverterTests {
|
|||
|
||||
assertThat(outputMessage.getHeaders().getContentType()).isEqualTo(contentType);
|
||||
|
||||
final String body = outputMessage.getBodyAsString(Charset.forName("UTF-8"));
|
||||
final String body = outputMessage.getBodyAsString(StandardCharsets.UTF_8);
|
||||
assertThat(body.isEmpty()).as("body is empty").isFalse();
|
||||
|
||||
Msg.Builder builder = Msg.newBuilder();
|
||||
|
@ -197,7 +197,8 @@ public class ProtobufHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void defaultContentType() throws Exception {
|
||||
assertThat(this.converter.getDefaultContentType(this.testMsg)).isEqualTo(ProtobufHttpMessageConverter.PROTOBUF);
|
||||
assertThat(this.converter.getDefaultContentType(this.testMsg))
|
||||
.isEqualTo(ProtobufHttpMessageConverter.PROTOBUF);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
@ -94,7 +94,8 @@ public class MappingJackson2SmileHttpMessageConverterTests {
|
|||
body.setBytes(new byte[]{0x1, 0x2});
|
||||
converter.write(body, null, outputMessage);
|
||||
assertThat(outputMessage.getBodyAsBytes()).isEqualTo(mapper.writeValueAsBytes(body));
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "x-jackson-smile"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "x-jackson-smile"));
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
|
|
@ -99,7 +99,7 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
@SuppressWarnings("unchecked")
|
||||
public void readXmlRootElementSet() throws Exception {
|
||||
String content = "<set><rootElement><type s=\"1\"/></rootElement><rootElement><type s=\"2\"/></rootElement></set>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
Set<RootElement> result = (Set<RootElement>) converter.read(rootElementSetType, null, inputMessage);
|
||||
|
||||
assertThat(result.size()).as("Invalid result").isEqualTo(2);
|
||||
|
@ -111,7 +111,7 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
@SuppressWarnings("unchecked")
|
||||
public void readXmlTypeList() throws Exception {
|
||||
String content = "<list><foo s=\"1\"/><bar s=\"2\"/></list>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
List<TestType> result = (List<TestType>) converter.read(typeListType, null, inputMessage);
|
||||
|
||||
assertThat(result.size()).as("Invalid result").isEqualTo(2);
|
||||
|
@ -123,7 +123,7 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
@SuppressWarnings("unchecked")
|
||||
public void readXmlTypeSet() throws Exception {
|
||||
String content = "<set><foo s=\"1\"/><bar s=\"2\"/></set>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
Set<TestType> result = (Set<TestType>) converter.read(typeSetType, null, inputMessage);
|
||||
|
||||
assertThat(result.size()).as("Invalid result").isEqualTo(2);
|
||||
|
@ -139,7 +139,7 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
" <!ELEMENT external ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]>" +
|
||||
" <list><rootElement><type s=\"1\"/><external>&ext;</external></rootElement></list>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
|
||||
converter = new Jaxb2CollectionHttpMessageConverter<Collection<Object>>() {
|
||||
@Override
|
||||
|
@ -168,7 +168,7 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
" <!ELEMENT external ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]>" +
|
||||
" <list><rootElement><type s=\"1\"/><external>&ext;</external></rootElement></list>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
|
||||
Jaxb2CollectionHttpMessageConverter<?> c = new Jaxb2CollectionHttpMessageConverter<Collection<Object>>() {
|
||||
@Override
|
||||
|
@ -203,10 +203,10 @@ public class Jaxb2CollectionHttpMessageConverterTests {
|
|||
" <!ENTITY lol9 \"&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;\">\n" +
|
||||
"]>\n" +
|
||||
"<list><rootElement><external>&lol9;</external></rootElement></list>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(this.rootElementListType, null, inputMessage))
|
||||
.withMessageContaining("\"lol9\"");
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class)
|
||||
.isThrownBy(() -> this.converter.read(this.rootElementListType, null, inputMessage))
|
||||
.withMessageContaining("\"lol9\"");
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -85,21 +85,27 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void canRead() {
|
||||
assertThat(converter.canRead(RootElement.class, null)).as("Converter does not support reading @XmlRootElement").isTrue();
|
||||
assertThat(converter.canRead(Type.class, null)).as("Converter does not support reading @XmlType").isTrue();
|
||||
assertThat(converter.canRead(RootElement.class, null))
|
||||
.as("Converter does not support reading @XmlRootElement").isTrue();
|
||||
assertThat(converter.canRead(Type.class, null))
|
||||
.as("Converter does not support reading @XmlType").isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void canWrite() {
|
||||
assertThat(converter.canWrite(RootElement.class, null)).as("Converter does not support writing @XmlRootElement").isTrue();
|
||||
assertThat(converter.canWrite(RootElementSubclass.class, null)).as("Converter does not support writing @XmlRootElement subclass").isTrue();
|
||||
assertThat(converter.canWrite(rootElementCglib.getClass(), null)).as("Converter does not support writing @XmlRootElement subclass").isTrue();
|
||||
assertThat(converter.canWrite(Type.class, null)).as("Converter supports writing @XmlType").isFalse();
|
||||
assertThat(converter.canWrite(RootElement.class, null))
|
||||
.as("Converter does not support writing @XmlRootElement").isTrue();
|
||||
assertThat(converter.canWrite(RootElementSubclass.class, null))
|
||||
.as("Converter does not support writing @XmlRootElement subclass").isTrue();
|
||||
assertThat(converter.canWrite(rootElementCglib.getClass(), null))
|
||||
.as("Converter does not support writing @XmlRootElement subclass").isTrue();
|
||||
assertThat(converter.canWrite(Type.class, null))
|
||||
.as("Converter supports writing @XmlType").isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void readXmlRootElement() throws Exception {
|
||||
byte[] body = "<rootElement><type s=\"Hello World\"/></rootElement>".getBytes("UTF-8");
|
||||
byte[] body = "<rootElement><type s=\"Hello World\"/></rootElement>".getBytes(StandardCharsets.UTF_8);
|
||||
InputStream inputStream = spy(new ByteArrayInputStream(body));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(inputStream);
|
||||
RootElement result = (RootElement) converter.read(RootElement.class, inputMessage);
|
||||
|
@ -109,7 +115,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readXmlRootElementSubclass() throws Exception {
|
||||
byte[] body = "<rootElement><type s=\"Hello World\"/></rootElement>".getBytes("UTF-8");
|
||||
byte[] body = "<rootElement><type s=\"Hello World\"/></rootElement>".getBytes(StandardCharsets.UTF_8);
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body);
|
||||
RootElementSubclass result = (RootElementSubclass) converter.read(RootElementSubclass.class, inputMessage);
|
||||
assertThat(result.getType().s).as("Invalid result").isEqualTo("Hello World");
|
||||
|
@ -117,7 +123,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readXmlType() throws Exception {
|
||||
byte[] body = "<foo s=\"Hello World\"/>".getBytes("UTF-8");
|
||||
byte[] body = "<foo s=\"Hello World\"/>".getBytes(StandardCharsets.UTF_8);
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body);
|
||||
Type result = (Type) converter.read(Type.class, inputMessage);
|
||||
assertThat(result.s).as("Invalid result").isEqualTo("Hello World");
|
||||
|
@ -130,7 +136,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
" <!ELEMENT external ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]>" +
|
||||
" <rootElement><external>&ext;</external></rootElement>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
converter.setSupportDtd(true);
|
||||
RootElement rootElement = (RootElement) converter.read(RootElement.class, inputMessage);
|
||||
|
||||
|
@ -144,7 +150,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
" <!ELEMENT external ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]>" +
|
||||
" <rootElement><external>&ext;</external></rootElement>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
this.converter.setProcessExternalEntities(true);
|
||||
RootElement rootElement = (RootElement) converter.read(RootElement.class, inputMessage);
|
||||
|
||||
|
@ -170,7 +176,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
" <!ENTITY lol9 \"&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;\">\n" +
|
||||
"]>\n" +
|
||||
"<rootElement><external>&lol9;</external></rootElement>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(RootElement.class, inputMessage))
|
||||
.withMessageContaining("DOCTYPE");
|
||||
|
@ -180,7 +186,8 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
public void writeXmlRootElement() throws Exception {
|
||||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
converter.write(rootElement, null, outputMessage);
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_XML);
|
||||
DifferenceEvaluator ev = chain(Default, downgradeDifferencesToEqual(XML_STANDALONE));
|
||||
assertThat(XmlContent.of(outputMessage.getBodyAsString(StandardCharsets.UTF_8)))
|
||||
.isSimilarTo("<rootElement><type s=\"Hello World\"/></rootElement>", ev);
|
||||
|
@ -191,7 +198,8 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
public void writeXmlRootElementSubclass() throws Exception {
|
||||
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
|
||||
converter.write(rootElementCglib, null, outputMessage);
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_XML);
|
||||
DifferenceEvaluator ev = chain(Default, downgradeDifferencesToEqual(XML_STANDALONE));
|
||||
assertThat(XmlContent.of(outputMessage.getBodyAsString(StandardCharsets.UTF_8)))
|
||||
.isSimilarTo("<rootElement><type s=\"Hello World\"/></rootElement>", ev);
|
||||
|
@ -211,7 +219,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void customizeUnmarshaller() throws Exception {
|
||||
byte[] body = "<myRootElement><element>a|||b</element></myRootElement>".getBytes("UTF-8");
|
||||
byte[] body = "<myRootElement><element>a|||b</element></myRootElement>".getBytes(StandardCharsets.UTF_8);
|
||||
MyJaxb2RootElementHttpMessageConverter myConverter = new MyJaxb2RootElementHttpMessageConverter();
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body);
|
||||
MyRootElement result = (MyRootElement) myConverter.read(MyRootElement.class, inputMessage);
|
||||
|
|
|
@ -110,15 +110,16 @@ public class MappingJackson2XmlHttpMessageConverterTests {
|
|||
assertThat(result.contains("<array><array>Foo</array><array>Bar</array></array>")).isTrue();
|
||||
assertThat(result.contains("<bool>true</bool>")).isTrue();
|
||||
assertThat(result.contains("<bytes>AQI=</bytes>")).isTrue();
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml", StandardCharsets.UTF_8));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "xml", StandardCharsets.UTF_8));
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void readInvalidXml() throws IOException {
|
||||
String body = "FooBar";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
converter.read(MyBean.class, inputMessage));
|
||||
}
|
||||
|
@ -126,8 +127,8 @@ public class MappingJackson2XmlHttpMessageConverterTests {
|
|||
@Test
|
||||
public void readValidXmlWithUnknownProperty() throws IOException {
|
||||
String body = "<MyBean><string>string</string><unknownProperty>value</unknownProperty></MyBean>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
converter.read(MyBean.class, inputMessage);
|
||||
// Assert no HttpMessageNotReadableException is thrown
|
||||
}
|
||||
|
@ -164,8 +165,8 @@ public class MappingJackson2XmlHttpMessageConverterTests {
|
|||
new ClassPathResource("external.txt", getClass()).getURI() +
|
||||
"\" >]><MyBean><string>&ext;</string></MyBean>";
|
||||
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(MyBean.class, inputMessage));
|
||||
|
@ -191,8 +192,8 @@ public class MappingJackson2XmlHttpMessageConverterTests {
|
|||
"]>\n" +
|
||||
"<MyBean>&lol9;</MyBean>";
|
||||
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(body.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(MyBean.class, inputMessage));
|
||||
|
|
|
@ -108,12 +108,12 @@ public class MarshallingHttpMessageConverterTests {
|
|||
|
||||
Marshaller marshaller = mock(Marshaller.class);
|
||||
Unmarshaller unmarshaller = mock(Unmarshaller.class);
|
||||
given(unmarshaller.unmarshal(isA(StreamSource.class))).willReturn(Integer.valueOf(3));
|
||||
given(unmarshaller.unmarshal(isA(StreamSource.class))).willReturn(3);
|
||||
|
||||
MarshallingHttpMessageConverter converter = new MarshallingHttpMessageConverter(marshaller, unmarshaller);
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
converter.read(String.class, inputMessage))
|
||||
.withCauseInstanceOf(TypeMismatchException.class);
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class)
|
||||
.isThrownBy(() -> converter.read(String.class, inputMessage))
|
||||
.withCauseInstanceOf(TypeMismatchException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -127,9 +127,8 @@ public class MarshallingHttpMessageConverterTests {
|
|||
MarshallingHttpMessageConverter converter = new MarshallingHttpMessageConverter();
|
||||
converter.setUnmarshaller(unmarshaller);
|
||||
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
converter.read(Object.class, inputMessage))
|
||||
.withCause(ex);
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class)
|
||||
.isThrownBy(() -> converter.read(Object.class, inputMessage)).withCause(ex);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -143,7 +142,8 @@ public class MarshallingHttpMessageConverterTests {
|
|||
MarshallingHttpMessageConverter converter = new MarshallingHttpMessageConverter(marshaller);
|
||||
converter.write(body, null, outputMessage);
|
||||
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
@ -157,13 +157,12 @@ public class MarshallingHttpMessageConverterTests {
|
|||
willThrow(ex).given(marshaller).marshal(eq(body), isA(Result.class));
|
||||
|
||||
MarshallingHttpMessageConverter converter = new MarshallingHttpMessageConverter(marshaller);
|
||||
assertThatExceptionOfType(HttpMessageNotWritableException.class).isThrownBy(() ->
|
||||
converter.write(body, null, outputMessage))
|
||||
.withCause(ex);
|
||||
assertThatExceptionOfType(HttpMessageNotWritableException.class)
|
||||
.isThrownBy(() -> converter.write(body, null, outputMessage)).withCause(ex);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void supports() throws Exception {
|
||||
public void supports() {
|
||||
assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(() ->
|
||||
new MarshallingHttpMessageConverter().supports(Object.class));
|
||||
}
|
||||
|
|
|
@ -95,9 +95,9 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readDOMSource() throws Exception {
|
||||
InputStream inputStream = spy(new ByteArrayInputStream(BODY.getBytes("UTF-8")));
|
||||
InputStream inputStream = spy(new ByteArrayInputStream(BODY.getBytes(StandardCharsets.UTF_8)));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(inputStream);
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
DOMSource result = (DOMSource) converter.read(DOMSource.class, inputMessage);
|
||||
Document document = (Document) result.getNode();
|
||||
assertThat(document.getDocumentElement().getLocalName()).as("Invalid result").isEqualTo("root");
|
||||
|
@ -106,8 +106,8 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readDOMSourceExternal() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
converter.setSupportDtd(true);
|
||||
DOMSource result = (DOMSource) converter.read(DOMSource.class, inputMessage);
|
||||
Document document = (Document) result.getNode();
|
||||
|
@ -134,7 +134,7 @@ public class SourceHttpMessageConverterTests {
|
|||
" <!ENTITY lol9 \"&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;\">\n" +
|
||||
"]>\n" +
|
||||
"<root>&lol9;</root>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
|
||||
assertThatExceptionOfType(HttpMessageNotReadableException.class).isThrownBy(() ->
|
||||
this.converter.read(DOMSource.class, inputMessage))
|
||||
|
@ -143,8 +143,8 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readSAXSource() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
SAXSource result = (SAXSource) converter.read(SAXSource.class, inputMessage);
|
||||
InputSource inputSource = result.getInputSource();
|
||||
String s = FileCopyUtils.copyToString(new InputStreamReader(inputSource.getByteStream()));
|
||||
|
@ -153,8 +153,8 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readSAXSourceExternal() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
converter.setSupportDtd(true);
|
||||
SAXSource result = (SAXSource) converter.read(SAXSource.class, inputMessage);
|
||||
InputSource inputSource = result.getInputSource();
|
||||
|
@ -189,20 +189,19 @@ public class SourceHttpMessageConverterTests {
|
|||
"]>\n" +
|
||||
"<root>&lol9;</root>";
|
||||
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
SAXSource result = (SAXSource) this.converter.read(SAXSource.class, inputMessage);
|
||||
|
||||
InputSource inputSource = result.getInputSource();
|
||||
XMLReader reader = result.getXMLReader();
|
||||
assertThatExceptionOfType(SAXException.class).isThrownBy(() ->
|
||||
reader.parse(inputSource))
|
||||
.withMessageContaining("DOCTYPE");
|
||||
assertThatExceptionOfType(SAXException.class)
|
||||
.isThrownBy(() -> reader.parse(inputSource)).withMessageContaining("DOCTYPE");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void readStAXSource() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
StAXSource result = (StAXSource) converter.read(StAXSource.class, inputMessage);
|
||||
XMLStreamReader streamReader = result.getXMLStreamReader();
|
||||
assertThat(streamReader.hasNext()).isTrue();
|
||||
|
@ -216,8 +215,8 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readStAXSourceExternal() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(bodyExternal.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
converter.setSupportDtd(true);
|
||||
StAXSource result = (StAXSource) converter.read(StAXSource.class, inputMessage);
|
||||
XMLStreamReader streamReader = result.getXMLStreamReader();
|
||||
|
@ -255,7 +254,7 @@ public class SourceHttpMessageConverterTests {
|
|||
" <!ENTITY lol9 \"&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;\">\n" +
|
||||
"]>\n" +
|
||||
"<root>&lol9;</root>";
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes("UTF-8"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(content.getBytes(StandardCharsets.UTF_8));
|
||||
StAXSource result = (StAXSource) this.converter.read(StAXSource.class, inputMessage);
|
||||
|
||||
XMLStreamReader streamReader = result.getXMLStreamReader();
|
||||
|
@ -264,15 +263,14 @@ public class SourceHttpMessageConverterTests {
|
|||
streamReader.next();
|
||||
String s = streamReader.getLocalName();
|
||||
assertThat(s).isEqualTo("root");
|
||||
assertThatExceptionOfType(XMLStreamException.class).isThrownBy(() ->
|
||||
streamReader.getElementText())
|
||||
.withMessageContaining("\"lol9\"");
|
||||
assertThatExceptionOfType(XMLStreamException.class)
|
||||
.isThrownBy(streamReader::getElementText).withMessageContaining("\"lol9\"");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void readStreamSource() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
StreamSource result = (StreamSource) converter.read(StreamSource.class, inputMessage);
|
||||
String s = FileCopyUtils.copyToString(new InputStreamReader(result.getInputStream()));
|
||||
assertThat(XmlContent.of(s)).isSimilarTo(BODY);
|
||||
|
@ -280,8 +278,8 @@ public class SourceHttpMessageConverterTests {
|
|||
|
||||
@Test
|
||||
public void readSource() throws Exception {
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes("UTF-8"));
|
||||
inputMessage.getHeaders().setContentType(new MediaType("application", "xml"));
|
||||
MockHttpInputMessage inputMessage = new MockHttpInputMessage(BODY.getBytes(StandardCharsets.UTF_8));
|
||||
inputMessage.getHeaders().setContentType(MediaType.APPLICATION_XML);
|
||||
converter.read(Source.class, inputMessage);
|
||||
}
|
||||
|
||||
|
@ -299,8 +297,10 @@ public class SourceHttpMessageConverterTests {
|
|||
converter.write(domSource, null, outputMessage);
|
||||
assertThat(XmlContent.of(outputMessage.getBodyAsString(StandardCharsets.UTF_8)))
|
||||
.isSimilarTo("<root>Hello World</root>");
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentLength()).as("Invalid content-length").isEqualTo(outputMessage.getBodyAsBytes().length);
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_XML);
|
||||
assertThat(outputMessage.getHeaders().getContentLength())
|
||||
.as("Invalid content-length").isEqualTo(outputMessage.getBodyAsBytes().length);
|
||||
verify(outputMessage.getBody(), never()).close();
|
||||
}
|
||||
|
||||
|
@ -313,7 +313,8 @@ public class SourceHttpMessageConverterTests {
|
|||
converter.write(saxSource, null, outputMessage);
|
||||
assertThat(XmlContent.of(outputMessage.getBodyAsString(StandardCharsets.UTF_8)))
|
||||
.isSimilarTo("<root>Hello World</root>");
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_XML);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -325,7 +326,8 @@ public class SourceHttpMessageConverterTests {
|
|||
converter.write(streamSource, null, outputMessage);
|
||||
assertThat(XmlContent.of(outputMessage.getBodyAsString(StandardCharsets.UTF_8)))
|
||||
.isSimilarTo("<root>Hello World</root>");
|
||||
assertThat(outputMessage.getHeaders().getContentType()).as("Invalid content-type").isEqualTo(new MediaType("application", "xml"));
|
||||
assertThat(outputMessage.getHeaders().getContentType())
|
||||
.as("Invalid content-type").isEqualTo(MediaType.APPLICATION_XML);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue