Author: veithen
Date: Wed Mar  4 23:02:56 2009
New Revision: 750217

URL: http://svn.apache.org/viewvc?rev=750217&view=rev
Log:
Eliminated duplicate code in MTOMStAXSOAPModelBuilderTest.

Modified:
    
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/impl/mtom/MTOMStAXSOAPModelBuilderTest.java

Modified: 
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/impl/mtom/MTOMStAXSOAPModelBuilderTest.java
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/impl/mtom/MTOMStAXSOAPModelBuilderTest.java?rev=750217&r1=750216&r2=750217&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/impl/mtom/MTOMStAXSOAPModelBuilderTest.java
 (original)
+++ 
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/impl/mtom/MTOMStAXSOAPModelBuilderTest.java
 Wed Mar  4 23:02:56 2009
@@ -59,7 +59,7 @@
         super.setUp();
     }
 
-    public void testCreateOMElement() throws Exception {
+    private OMElement createTestMTOMMessage() throws Exception {
         String contentTypeString =
                 "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
         String inFileName = "mtom/MTOMBuilderTestIn.txt";
@@ -70,7 +70,27 @@
                         .getSOAPPartInputStream())));
         OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
                                                
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
+        return builder.getDocumentElement();
+    }
+    
+    private void checkSerialization(OMElement root, boolean optimize) throws 
Exception {
+        OMOutputFormat format = new OMOutputFormat();
+        format.setDoOptimize(optimize);
+        ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        root.serializeAndConsume(baos, format);
+        String msg = baos.toString();
+        if (optimize) {
+            // Make sure there is an xop:Include element and an optimized 
attachment
+            assertTrue(msg.indexOf("xop:Include") > 0);
+            assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        } else {
+            assertTrue(msg.indexOf("xop:Include") < 0);
+            assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") < 0);
+        }
+    }
+    
+    public void testCreateOMElement() throws Exception {
+        OMElement root = createTestMTOMMessage();
         OMElement body = (OMElement) root.getFirstOMChild();
         OMElement data = (OMElement) body.getFirstOMChild();
 
@@ -102,26 +122,8 @@
      */
     // TODO: because of the serializeAndConsume, this is actually NOT testing 
MTOMStAXSOAPModelBuilder, but StreamingOMSerializer!!!
     public void testCreateAndSerializeOptimized() throws Exception {
-        String contentTypeString =
-                "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
-        String inFileName = "mtom/MTOMBuilderTestIn.txt";
-        InputStream inStream = getTestResource(inFileName);
-        Attachments attachments = new Attachments(inStream, contentTypeString);
-        XMLStreamReader reader = XMLInputFactory.newInstance()
-                .createXMLStreamReader(new BufferedReader(new 
InputStreamReader(attachments
-                        .getSOAPPartInputStream())));
-        OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
-                                               
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
-        
-        OMOutputFormat format = new OMOutputFormat();
-        format.setDoOptimize(true);
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        root.serializeAndConsume(baos, format);
-        String msg = baos.toString();
-        // Make sure there is an xop:Include element and an optimized 
attachment
-        assertTrue(msg.indexOf("xop:Include") > 0);
-        assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        OMElement root = createTestMTOMMessage();
+        checkSerialization(root, true);
     }
     
     /**
@@ -131,40 +133,16 @@
      * @throws Exception
      */
     public void testCreateCloneAndSerializeOptimized() throws Exception {
-        String contentTypeString =
-                "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
-        String inFileName = "mtom/MTOMBuilderTestIn.txt";
-        InputStream inStream = getTestResource(inFileName);
-        Attachments attachments = new Attachments(inStream, contentTypeString);
-        XMLStreamReader reader = XMLInputFactory.newInstance()
-                .createXMLStreamReader(new BufferedReader(new 
InputStreamReader(attachments
-                        .getSOAPPartInputStream())));
-        OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
-                                               
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
+        OMElement root = createTestMTOMMessage();
         
         // Create a clone of root
         OMElement root2 = root.cloneOMElement();
         
         // Write out the source
-        OMOutputFormat format = new OMOutputFormat();
-        format.setDoOptimize(true);
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        root.serializeAndConsume(baos, format);
-        String msg = baos.toString();
-        // Make sure there is an xop:Include element and an optimized 
attachment
-        assertTrue(msg.indexOf("xop:Include") > 0);
-        assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        checkSerialization(root, true);
         
         // Write out the clone
-        format = new OMOutputFormat();
-        format.setDoOptimize(true);
-        baos = new ByteArrayOutputStream();
-        root2.serializeAndConsume(baos, format);
-        msg = baos.toString();
-        // Make sure there is an xop:Include element and an optimized 
attachment
-        assertTrue(msg.indexOf("xop:Include") > 0);
-        assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        checkSerialization(root2, true);
     }
     
     /**
@@ -175,17 +153,7 @@
      * @throws Exception
      */
     public void testCreateBuildCloneAndSerializeOptimized() throws Exception {
-        String contentTypeString =
-                "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
-        String inFileName = "mtom/MTOMBuilderTestIn.txt";
-        InputStream inStream = getTestResource(inFileName);
-        Attachments attachments = new Attachments(inStream, contentTypeString);
-        XMLStreamReader reader = XMLInputFactory.newInstance()
-                .createXMLStreamReader(new BufferedReader(new 
InputStreamReader(attachments
-                        .getSOAPPartInputStream())));
-        OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
-                                               
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
+        OMElement root = createTestMTOMMessage();
         
         // Fully build the root
         root.buildWithAttachments();
@@ -194,24 +162,10 @@
         OMElement root2 = root.cloneOMElement();
         
         // Write out the source
-        OMOutputFormat format = new OMOutputFormat();
-        format.setDoOptimize(true);
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        root.serializeAndConsume(baos, format);
-        String msg = baos.toString();
-        // Make sure there is an xop:Include element and an optimized 
attachment
-        assertTrue(msg.indexOf("xop:Include") > 0);
-        assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        checkSerialization(root, true);
         
         // Write out the clone
-        format = new OMOutputFormat();
-        format.setDoOptimize(true);
-        baos = new ByteArrayOutputStream();
-        root2.serializeAndConsume(baos, format);
-        msg = baos.toString();
-        // Make sure there is an xop:Include element and an optimized 
attachment
-        assertTrue(msg.indexOf("xop:Include") > 0);
-        assertTrue(msg.indexOf("Content-ID: <-1609420109260943731>") > 0);
+        checkSerialization(root2, true);
     }
     
     
@@ -222,27 +176,9 @@
      * @throws Exception
      */
     public void testCreateAndSerializeInlined() throws Exception {
-        String contentTypeString =
-                "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
-        String inFileName = "mtom/MTOMBuilderTestIn.txt";
-        InputStream inStream = getTestResource(inFileName);
-        Attachments attachments = new Attachments(inStream, contentTypeString);
-        XMLStreamReader reader = XMLInputFactory.newInstance()
-                .createXMLStreamReader(new BufferedReader(new 
InputStreamReader(attachments
-                        .getSOAPPartInputStream())));
-        OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
-                                               
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
+        OMElement root = createTestMTOMMessage();
         
-        OMOutputFormat format = new OMOutputFormat();
-        format.setDoOptimize(false);
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        root.serializeAndConsume(baos, format);
-        String msg = baos.toString();
-        // Make sure there is not an xop:Include
-        // Make sure there is not an optimized attachment
-        assertTrue(msg.indexOf("xop:Include") < 0);
-        assertTrue(msg.indexOf("Content-ID: <cid:-1609420109260943731>") < 0);
+        checkSerialization(root, false);
     }
 
     public void testUTF16MTOMMessage() throws Exception {
@@ -281,17 +217,7 @@
     }
 
     public void testCreateAndXMLStreamReader() throws Exception {
-        String contentTypeString =
-                "multipart/Related; charset=\"UTF-8\"; 
type=\"application/xop+xml\"; boundary=\"----=_AxIs2_Def_boundary_=42214532\"; 
start=\"SOAPPart\"";
-        String inFileName = "mtom/MTOMBuilderTestIn.txt";
-        InputStream inStream = getTestResource(inFileName);
-        Attachments attachments = new Attachments(inStream, contentTypeString);
-        XMLStreamReader reader = XMLInputFactory.newInstance()
-                .createXMLStreamReader(new BufferedReader(new 
InputStreamReader(attachments
-                        .getSOAPPartInputStream())));
-        OMXMLParserWrapper builder = new MTOMStAXSOAPModelBuilder(reader, 
attachments,
-                                               
SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
-        OMElement root = builder.getDocumentElement();
+        OMElement root = createTestMTOMMessage();
         
         // Build tree
         root.build();


Reply via email to