Author: sergeyb
Date: Wed Oct 31 19:19:32 2012
New Revision: 1404308
URL: http://svn.apache.org/viewvc?rev=1404308&view=rev
Log:
[CXF-4348] Adding one more test
Modified:
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSMultipartTest.java
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/MultipartStore.java
Modified:
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSMultipartTest.java
URL:
http://svn.apache.org/viewvc/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSMultipartTest.java?rev=1404308&r1=1404307&r2=1404308&view=diff
==============================================================================
---
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSMultipartTest.java
(original)
+++
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSMultipartTest.java
Wed Oct 31 19:19:32 2012
@@ -50,6 +50,7 @@ import org.apache.commons.httpclient.met
import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity;
import org.apache.commons.httpclient.methods.multipart.Part;
import org.apache.cxf.helpers.IOUtils;
+import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.io.CachedOutputStream;
import org.apache.cxf.jaxrs.client.JAXRSClientFactory;
import org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean;
@@ -411,10 +412,29 @@ public class JAXRSMultipartTest extends
}
@Test
- public void testAddBookJaxbJsonImageWebClient() throws Exception {
+ public void testAddBookJaxbJsonImageWebClientMixed() throws Exception {
+ Map<String, String> params =
+ doTestAddBookJaxbJsonImageWebClient("multipart/mixed");
+ assertEquals(1, params.size());
+ assertNotNull(params.get("boundary"));
+
+ }
+
+ @Test
+ public void testAddBookJaxbJsonImageWebClientRelated() throws Exception {
+ Map<String, String> params =
+ doTestAddBookJaxbJsonImageWebClient("multipart/related");
+ assertEquals(3, params.size());
+ assertNotNull(params.get("boundary"));
+ assertNotNull(params.get("type"));
+ assertNotNull(params.get("start"));
+ }
+
+ private Map<String, String> doTestAddBookJaxbJsonImageWebClient(String
multipartType) throws Exception {
String address = "http://localhost:" + PORT +
"/bookstore/books/jaxbjsonimage";
WebClient client = WebClient.create(address);
- client.type("multipart/mixed").accept("multipart/mixed");
+ WebClient.getConfig(client).getInInterceptors().add(new
LoggingInInterceptor());
+ client.type(multipartType).accept(multipartType);
Book jaxb = new Book("jaxb", 1L);
Book json = new Book("json", 2L);
@@ -441,10 +461,7 @@ public class JAXRSMultipartTest extends
String ctString =
client.getResponse().getMetadata().getFirst("Content-Type").toString();
MediaType mt = MediaType.valueOf(ctString);
- Map<String, String> params = mt.getParameters();
- assertEquals(1, params.size());
- assertNotNull(params.get("boundary"));
-
+ return mt.getParameters();
}
@Test
Modified:
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/MultipartStore.java
URL:
http://svn.apache.org/viewvc/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/MultipartStore.java?rev=1404308&r1=1404307&r2=1404308&view=diff
==============================================================================
---
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/MultipartStore.java
(original)
+++
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/MultipartStore.java
Wed Oct 31 19:19:32 2012
@@ -166,8 +166,8 @@ public class MultipartStore {
@POST
@Path("/books/jaxbjsonimage")
- @Consumes("multipart/mixed")
- @Produces("multipart/mixed")
+ @Consumes({"multipart/mixed", "multipart/related" })
+ @Produces({"multipart/mixed", "multipart/related" })
public Map<String, Object>
addBookJaxbJsonImage(@Multipart("[email protected]") Book jaxb,
@Multipart("1") Book json,
@Multipart("2") byte[]
image) throws Exception {