You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by jo...@apache.org on 2007/12/31 17:18:02 UTC

svn commit: r607747 - in /cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype: DynamicSelectionListTestCase.java EnumSelectionListTestCase.java FlowJXPathSelectionListTestCase.java

Author: joerg
Date: Mon Dec 31 08:18:01 2007
New Revision: 607747

URL: http://svn.apache.org/viewvc?rev=607747&view=rev
Log:
fix NPE in Xalan's TransformerIdentityImpl.flushStartDoc(..) due to missing startDocument() event (http://marc.info/?l=xml-cocoon-dev&m=119910888817794&w=4)

Modified:
    cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.java
    cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.java
    cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.java

Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.java?rev=607747&r1=607746&r2=607747&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.java Mon Dec 31 08:18:01 2007
@@ -22,6 +22,7 @@
 import org.apache.cocoon.forms.FormsConstants;
 import org.apache.cocoon.xml.dom.DOMBuilder;
 
+import org.apache.excalibur.source.Source;
 import org.apache.excalibur.source.SourceResolver;
 import org.apache.excalibur.source.impl.ResourceSource;
 import org.apache.excalibur.xmlizer.XMLizer;
@@ -41,24 +42,27 @@
      * @throws ParserConfigurationException
      */
     public void testGenerateSaxFragment() throws Exception {
-        DOMBuilder dest = new DOMBuilder();
-        ResourceSource source = 
+        Source source = 
             new ResourceSource("resource://org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.source.xml");
         Document sourceDoc = this.parser.parse(source.getInputStream());
         Element datatypeElement = (Element) sourceDoc.getElementsByTagNameNS(FormsConstants.DEFINITION_NS, "convertor").item(0);
         Datatype datatype = this.datatypeManager.createDatatype(datatypeElement, false);
         final XMLizer xmlizer = (XMLizer)getManager().lookup( XMLizer.ROLE );
         final SourceResolver sourceResolver = (SourceResolver)getManager().lookup( SourceResolver.ROLE );
-        DynamicSelectionList list = 
-            new DynamicSelectionList(datatype, null, xmlizer, sourceResolver, null);
+        DynamicSelectionList list = new DynamicSelectionList(datatype, null, xmlizer, sourceResolver, null);
+        
+        DOMBuilder dest = new DOMBuilder();
+        dest.startDocument();
         list.generateSaxFragment(dest, Locale.ENGLISH, source);
-        ResourceSource expectedSource =
+        dest.endDocument();
+        Document destDocument = dest.getDocument();
+        
+        Source expectedSource =
             new ResourceSource("resource://org/apache/cocoon/forms/datatype/DynamicSelectionListTestCase.dest.xml");
         Document expected = this.parser.parse(expectedSource.getInputStream());
         // FIXME: Why is the namespace declaration available as attribute on the expected document? (see COCOON-2155)
         expected.getDocumentElement().removeAttribute("xmlns:" + FormsConstants.INSTANCE_PREFIX);
-        assertEqual("Test if output is what is expected",
-                expected, dest.getDocument());
+        assertEqual("Test if output is what is expected", expected, destDocument);
     }
 
 }

Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.java?rev=607747&r1=607746&r2=607747&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.java Mon Dec 31 08:18:01 2007
@@ -23,6 +23,7 @@
 import org.apache.cocoon.forms.datatype.typeimpl.EnumType;
 import org.apache.cocoon.xml.dom.DOMBuilder;
 
+import org.apache.excalibur.source.Source;
 import org.apache.excalibur.source.impl.ResourceSource;
 
 import org.w3c.dom.Document;
@@ -40,19 +41,22 @@
      * @throws ParserConfigurationException
      */
     public void testGenerateSaxFragment() throws Exception {
-        DOMBuilder dest = new DOMBuilder();
         EnumSelectionList list = 
             new EnumSelectionList(Sex.class.getName(), new EnumType(), false);
+
+        DOMBuilder dest = new DOMBuilder();
+        dest.startDocument();
         list.generateSaxFragment(dest, Locale.ENGLISH);
-        ResourceSource expectedSource =
+        dest.endDocument();
+        Document destDocument = dest.getDocument();
+        
+        Source expectedSource =
             new ResourceSource("resource://org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.dest-no-null.xml");
         Document expected = this.parser.parse(expectedSource.getInputStream());
-        Document destDocument = dest.getDocument();
         // FIXME: Why is the namespace declaration available as attribute on the expected document? (see COCOON-2155)
         expected.getDocumentElement().removeAttribute("xmlns:" + FormsConstants.INSTANCE_PREFIX);
         expected.getDocumentElement().removeAttribute("xmlns:i18n");
-        assertEqual("Test if output is what is expected",
-                expected, destDocument);
+        assertEqual("Test if output is what is expected", expected, destDocument);
     }
     
     /**
@@ -61,19 +65,22 @@
      * @throws ParserConfigurationException
      */
     public void testGenerateSaxFragmentNullable() throws Exception {
-        DOMBuilder dest = new DOMBuilder();
         EnumSelectionList list = 
             new EnumSelectionList(Sex.class.getName(), new EnumType(), true);
+
+        DOMBuilder dest = new DOMBuilder();
+        dest.startDocument();
         list.generateSaxFragment(dest, Locale.ENGLISH);
-        ResourceSource expectedSource =
+        dest.endDocument();
+        Document destDocument = dest.getDocument();
+
+        Source expectedSource =
             new ResourceSource("resource://org/apache/cocoon/forms/datatype/EnumSelectionListTestCase.dest.xml");
         Document expected = this.parser.parse(expectedSource.getInputStream());
-        Document destDocument = dest.getDocument();
         // FIXME: Why is the namespace declaration available as attribute on the expected document? (see COCOON-2155)
         expected.getDocumentElement().removeAttribute("xmlns:" + FormsConstants.INSTANCE_PREFIX);
         expected.getDocumentElement().removeAttribute("xmlns:i18n");
-        assertEqual("Test if output is what is expected",
-                expected, destDocument);
+        assertEqual("Test if output is what is expected", expected, destDocument);
     }
     
 }

Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.java?rev=607747&r1=607746&r2=607747&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/test/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.java Mon Dec 31 08:18:01 2007
@@ -58,18 +58,21 @@
         flowContextObject.put("beans", beans);
         ObjectModel newObjectModel = new ObjectModelImpl();
         FlowHelper.setContextObject(getObjectModel(), newObjectModel, flowContextObject);
+        
         Source sampleSource = new ResourceSource("resource://org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.source.xml");
         Document sample = this.parser.parse(sampleSource.getInputStream());
         Element datatypeElement = (Element) sample.getElementsByTagNameNS(FormsConstants.DEFINITION_NS, "datatype").item(0);
         Datatype datatype = this.datatypeManager.createDatatype(datatypeElement, false);
         FlowJXPathSelectionList list = new FlowJXPathSelectionList(processInfoProvider, "beans", "key", "value", datatype,null,false,null,false);
+        
         DOMBuilder dest = new DOMBuilder();
         dest.startDocument();
         list.generateSaxFragment(dest, Locale.ENGLISH);
         dest.endDocument();
+        Document destDocument = dest.getDocument();
+
         Source expectedSource = new ResourceSource("resource://org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.dest.xml");
         Document expected = this.parser.parse(expectedSource.getInputStream());
-        Document destDocument = dest.getDocument();
         // FIXME: Why is the namespace declaration available as attribute on the expected document? (see COCOON-2155)
         expected.getDocumentElement().removeAttribute("xmlns:" + FormsConstants.INSTANCE_PREFIX);
         assertEqual("Test if generated list matches expected", expected, destDocument);
@@ -87,18 +90,21 @@
         flowContextObject.put("beans", beans);
         ObjectModel newObjectModel = new ObjectModelImpl();
         FlowHelper.setContextObject(getObjectModel(), newObjectModel, flowContextObject);
+        
         Source sampleSource = new ResourceSource("resource://org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCase.source.xml");
         Document sample = this.parser.parse(sampleSource.getInputStream());
         Element datatypeElement = (Element) sample.getElementsByTagNameNS(FormsConstants.DEFINITION_NS, "datatype").item(0);
         Datatype datatype = this.datatypeManager.createDatatype(datatypeElement, false);
         FlowJXPathSelectionList list = new FlowJXPathSelectionList(processInfoProvider, "beans", "key", "value", datatype,null,false,null,false);
+        
         DOMBuilder dest = new DOMBuilder();
         dest.startDocument();
         list.generateSaxFragment(dest, Locale.ENGLISH);
         dest.endDocument();
+        Document destDocument = dest.getDocument();
+
         Source expectedSource = new ResourceSource("resource://org/apache/cocoon/forms/datatype/FlowJXPathSelectionListTestCaseWithNull.dest.xml");
         Document expected = this.parser.parse(expectedSource.getInputStream());
-        Document destDocument = dest.getDocument();
         // FIXME: Why is the namespace declaration available as attribute on the expected document? (see COCOON-2155)
         expected.getDocumentElement().removeAttribute("xmlns:" + FormsConstants.INSTANCE_PREFIX);
         assertEqual("Test if generated list matches expected", expected, destDocument);
@@ -125,4 +131,5 @@
             return "{ " + this.key + " : " + this.value + " }";
         }
     }
+    
 }