Author: chinthaka
Date: Fri Apr 28 00:14:12 2006
New Revision: 397789

URL: http://svn.apache.org/viewcvs?rev=397789&view=rev
Log:
Adding one more test case on OM caching

Added:
    
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/om/OMCachingTest.java
Modified:
    
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMStAXWrapper.java

Modified: 
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMStAXWrapper.java
URL: 
http://svn.apache.org/viewcvs/webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMStAXWrapper.java?rev=397789&r1=397788&r2=397789&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMStAXWrapper.java
 (original)
+++ 
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMStAXWrapper.java
 Fri Apr 28 00:14:12 2006
@@ -855,7 +855,7 @@
                 try {
                     parser = (XMLStreamReader) builder.getParser();
                 } catch (Exception e) {
-                    throw new XMLStreamException("problem accessing the 
parser", e);
+                    throw new XMLStreamException("problem accessing the 
parser. " + e.getMessage(), e);
                 }
 
                 // We should throw an END_DOCUMENT

Added: 
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/om/OMCachingTest.java
URL: 
http://svn.apache.org/viewcvs/webservices/commons/trunk/modules/axiom/test/org/apache/axiom/om/OMCachingTest.java?rev=397789&view=auto
==============================================================================
--- 
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/om/OMCachingTest.java
 (added)
+++ 
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/om/OMCachingTest.java
 Fri Apr 28 00:14:12 2006
@@ -0,0 +1,94 @@
+package org.apache.axiom.om;
+
+import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+public class OMCachingTest extends AbstractTestCase {
+    private XMLStreamReader xmlStreamReader;
+
+    /**
+     * @param testName
+     */
+    public OMCachingTest(String testName) {
+        super(testName);
+    }
+
+    protected void setUp() throws Exception {
+
+    }
+
+    /**
+     * This will first serialize the element without caching. Then it tries to 
serialize again
+     * .
+     */
+    public void testCachingOne() {
+
+        OMElement documentElement = null;
+        try {
+            // first build the OM tree without caching and see whether up can 
cosume it again
+            StAXOMBuilder builder = new StAXOMBuilder(getXMLStreamReader());
+            documentElement = builder.getDocumentElement();
+            String envelopeString = documentElement.toStringWithConsume();
+        } catch (XMLStreamException e) {
+            e.printStackTrace();  //To change body of catch statement use File 
| Settings | File Templates.
+        } catch (FileNotFoundException e) {
+            e.printStackTrace();  //To change body of catch statement use File 
| Settings | File Templates.
+        }
+
+        try {
+            String envelopeString = documentElement.toStringWithConsume();
+            fail("Parser should fail as its already being accessed without 
caching");
+        } catch (XMLStreamException e) {
+            assertTrue(true);
+        }
+
+    }
+
+    /**
+     * This will first serialize the OMElement with caching and again will try 
to serialize.
+     */
+    public void testCachingTwo() {
+
+        OMElement documentElement = null;
+        try {
+            // first build the OM tree without caching and see whether up can 
cosume it again
+            StAXOMBuilder builder = new StAXOMBuilder(getXMLStreamReader());
+            documentElement = builder.getDocumentElement();
+            String envelopeString = documentElement.toString();
+            envelopeString = documentElement.toStringWithConsume();
+            assertTrue(true);
+        } catch (XMLStreamException e) {
+            fail("Parser should not failt as the element was serialized with 
caching");
+        } catch (FileNotFoundException e) {
+            fail("Parser should not failt as the element was serialized with 
caching");
+        }
+
+    }
+
+    private XMLStreamReader getXMLStreamReader() throws XMLStreamException, 
FileNotFoundException {
+        return XMLInputFactory.newInstance().
+                createXMLStreamReader(
+                        new FileReader(
+                                getTestResourceFile("soap/soapmessage.xml")));
+    }
+}


Reply via email to