You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ve...@apache.org on 2009/07/23 22:11:51 UTC

svn commit: r797208 - /webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java

Author: veithen
Date: Thu Jul 23 20:11:51 2009
New Revision: 797208

URL: http://svn.apache.org/viewvc?rev=797208&view=rev
Log:
ADB tests: Increased test coverage to messages with element whitespace.

Modified:
    webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java

Modified: webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java?rev=797208&r1=797207&r2=797208&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/AbstractTestCase.java Thu Jul 23 20:11:51 2009
@@ -59,6 +59,7 @@
 import org.apache.axis2.databinding.types.HexBinary;
 import org.apache.axis2.databinding.types.Language;
 import org.apache.axis2.databinding.types.URI;
+import org.apache.axis2.util.XMLPrettyPrinter;
 
 import junit.framework.TestCase;
 
@@ -301,6 +302,7 @@
         testSerializeDeserializeWrapped(bean, expectedResult);
         testSerializeDeserializeUsingMTOM(bean, expectedResult, true);
         testSerializeDeserializeUsingMTOM(bean, expectedResult, false);
+        testSerializeDeserializePrettified(bean, expectedResult);
         
         try {
             Class.forName("helper." + bean.getClass().getName());
@@ -317,6 +319,7 @@
         testSerializeDeserializeWrapped(helperModeBean, helperModeExpectedResult);
         testSerializeDeserializeUsingMTOM(helperModeBean, helperModeExpectedResult, true);
         testSerializeDeserializeUsingMTOM(helperModeBean, helperModeExpectedResult, false);
+        testSerializeDeserializePrettified(helperModeBean, helperModeExpectedResult);
     }
     
     // Deserialization approach 1: use an XMLStreamReader produced by the StAX parser.
@@ -375,6 +378,16 @@
         assertBeanEquals(expectedResult, ADBBeanUtil.parse(bean.getClass(), cache ? bodyElement.getXMLStreamReader() : bodyElement.getXMLStreamReaderWithoutCaching()));
     }
     
+    // This is used to check that ADB correctly handles element whitespace
+    private static void testSerializeDeserializePrettified(Object bean, Object expectedResult) throws Exception {
+        OMElement omElement = ADBBeanUtil.getOMElement(bean);
+        ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        XMLPrettyPrinter.prettify(omElement, baos);
+//        System.out.write(baos.toByteArray());
+        assertBeanEquals(expectedResult, ADBBeanUtil.parse(bean.getClass(),
+                StAXUtils.createXMLStreamReader(new ByteArrayInputStream(baos.toByteArray()))));
+    }
+    
     /**
      * Assert that serializing the given bean should result in an {@link ADBException}.
      *