You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by fa...@apache.org on 2018/08/18 13:14:14 UTC

svn commit: r1838325 - in /xmlbeans/trunk: src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java test/src/dom/checkin/ParserTest.java

Author: fanningpj
Date: Sat Aug 18 13:14:14 2018
New Revision: 1838325

URL: http://svn.apache.org/viewvc?rev=1838325&view=rev
Log:
set entity expansion limit to 2048 due to failing  tests

Added:
    xmlbeans/trunk/test/src/dom/checkin/ParserTest.java
      - copied, changed from r1838291, xmlbeans/trunk/test/src/dom/checkin/TextTest.java
Modified:
    xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java
    xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java

Modified: xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java?rev=1838325&r1=1838324&r2=1838325&view=diff
==============================================================================
--- xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java (original)
+++ xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/Sax2Dom.java Sat Aug 18 13:14:14 2018
@@ -48,7 +48,7 @@ public class Sax2Dom
 
     public Sax2Dom() throws ParserConfigurationException
     {
-        _document = DocumentHelper.newDocumentBuilder().newDocument();
+        _document = DocumentHelper.createDocument();
         _root = _document;
     }
 
@@ -65,7 +65,7 @@ public class Sax2Dom
         }
         else
         {
-            _document = DocumentHelper.newDocumentBuilder().newDocument();
+            _document = DocumentHelper.createDocument();
             _root = _document;
         }
     }

Modified: xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java?rev=1838325&r1=1838324&r2=1838325&view=diff
==============================================================================
--- xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java (original)
+++ xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/XMLBeansConstants.java Sat Aug 18 13:14:14 2018
@@ -19,19 +19,19 @@ public class XMLBeansConstants {
     public static final String PROPERTY_ENTITY_EXPANSION_LIMIT = "xmlbeans.entity.expansion.limit";
     public static final String PROPERTY_LOAD_DTD_GRAMMAR = "xmlbeans.load.dtd.grammar";
     public static final String PROPERTY_LOAD_EXTERNAL_DTD = "xmlbeans.load.external.dtd";
-    public static final int DEFAULT_ENTITY_EXPANSION_LIMIT = 1;
+    public static final int DEFAULT_ENTITY_EXPANSION_LIMIT = 2048;
     public static final String XML_PROPERTY_ENTITY_EXPANSION_LIMIT = "http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit";
     public static final String XML_PROPERTY_SECURITY_MANAGER = "http://apache.org/xml/properties/security-manager";
     public static final String FEATURE_LOAD_DTD_GRAMMAR = "http://apache.org/xml/features/nonvalidating/load-dtd-grammar";
     public static final String FEATURE_LOAD_EXTERNAL_DTD = "http://apache.org/xml/features/nonvalidating/load-external-dtd";
 
-    static int getEntityExpansionLimit() {
+    public static int getEntityExpansionLimit() {
         return Integer.getInteger(PROPERTY_ENTITY_EXPANSION_LIMIT, DEFAULT_ENTITY_EXPANSION_LIMIT);
     }
-    static boolean isLoadDtdGrammar() {
+    public static boolean isLoadDtdGrammar() {
         return Boolean.getBoolean(PROPERTY_LOAD_DTD_GRAMMAR);
     }
-    static boolean isLoadExternalDtd() {
+    public static boolean isLoadExternalDtd() {
         return Boolean.getBoolean(PROPERTY_LOAD_EXTERNAL_DTD);
     }
 }

Copied: xmlbeans/trunk/test/src/dom/checkin/ParserTest.java (from r1838291, xmlbeans/trunk/test/src/dom/checkin/TextTest.java)
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/test/src/dom/checkin/ParserTest.java?p2=xmlbeans/trunk/test/src/dom/checkin/ParserTest.java&p1=xmlbeans/trunk/test/src/dom/checkin/TextTest.java&r1=1838291&r2=1838325&rev=1838325&view=diff
==============================================================================
--- xmlbeans/trunk/test/src/dom/checkin/TextTest.java (original)
+++ xmlbeans/trunk/test/src/dom/checkin/ParserTest.java Sat Aug 18 13:14:14 2018
@@ -1,4 +1,4 @@
-/*   Copyright 2004 The Apache Software Foundation
+/*   Copyright 2018 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.
@@ -16,125 +16,57 @@
 
 package dom.checkin;
 
+import javax.xml.stream.XMLInputFactory;
 
-import dom.common.CharacterDataTest;
-import junit.framework.Test;
-import junit.framework.TestSuite;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-import xmlcursor.common.Common;
+import junit.framework.*;
 
+import org.apache.xmlbeans.impl.common.*;
 
 /**
- *
- *
+ * Tests for XML Parser settings
  */
 
-public class TextTest extends CharacterDataTest {
-
-    public TextTest(String s) {
-        super(s);
-        sXml = Common.XML_FOO_BAR_TEXT_EXT;
-    }
-
-    public static Test suite() {
-        return new TestSuite(TextTest.class);
-    }
-
-
-    public void testNodeName() {
-        assertEquals("#text", m_node.getNodeName());
-    }
-
-    public void testNodeType() {
-        assertEquals(Node.TEXT_NODE, m_node.getNodeType());
-    }
-
-
-    public void testNodeValue() {
-        assertEquals("extended", m_node.getNodeValue());
-    }
-
-
-    public void testNextSibling() {
-        Node nxtSibling = m_node.getNextSibling();
-        assertEquals(null, nxtSibling);
-    }
-
-    public void testPreviousSibling() {
-        Node prSibling = m_node.getPreviousSibling();
-        assertEquals("bar", prSibling.getLocalName());
-        assertEquals("text", ((Text) prSibling.getFirstChild()).getData());
-    }
-
-    public void testParent() {
-        Node parent = m_node.getParentNode();
-        assertEquals(m_doc.getFirstChild(), parent);
-        assertEquals("foo", parent.getLocalName());
-    }
-
+public class ParserTest extends TestCase {
 
-    public void testSplitTextNegative() {
-        try {
-            ((Text) m_node).splitText(-1);
-            fail("Deleting OOB chars");
-        }
-        catch (DOMException de) {
-            assertEquals(de.code, DOMException.INDEX_SIZE_ERR);
-        }
+    public void testXMLBeansConstantsDefaults() {
+        assertEquals(2048, XMLBeansConstants.getEntityExpansionLimit());
+        assertFalse(XMLBeansConstants.isLoadDtdGrammar());
+        assertFalse(XMLBeansConstants.isLoadExternalDtd());
     }
 
-    public void testSplitTextLarge() {
+    public void testXMLBeansConstantsOverrides() {
         try {
-            ((Text) m_node).splitText(((Text) m_node).getLength() + 1);
-            fail("Deleting OOB chars");
-        }
-        catch (DOMException de) {
-            assertEquals(de.code, DOMException.INDEX_SIZE_ERR);
+            System.setProperty(XMLBeansConstants.PROPERTY_ENTITY_EXPANSION_LIMIT, "1");
+            System.setProperty(XMLBeansConstants.PROPERTY_LOAD_DTD_GRAMMAR, "true");
+            System.setProperty(XMLBeansConstants.PROPERTY_LOAD_EXTERNAL_DTD, "true");
+            assertEquals(1, XMLBeansConstants.getEntityExpansionLimit());
+            assertTrue(XMLBeansConstants.isLoadDtdGrammar());
+            assertTrue(XMLBeansConstants.isLoadExternalDtd());
+        } finally {
+            System.clearProperty(XMLBeansConstants.PROPERTY_ENTITY_EXPANSION_LIMIT);
+            System.clearProperty(XMLBeansConstants.PROPERTY_LOAD_DTD_GRAMMAR);
+            System.clearProperty(XMLBeansConstants.PROPERTY_LOAD_EXTERNAL_DTD);
         }
     }
 
-    public void testSplitText() {
-        Node parent = m_node.getParentNode();
-        int nChildCount = parent.getChildNodes().getLength();
-        ((Text) m_node).splitText(2);
-        assertEquals(nChildCount + 1, parent.getChildNodes().getLength());
+    public void testXmlInputFactoryPropertyDefaults() {
+        XMLInputFactory factory = StaxHelper.newXMLInputFactory();
+        assertEquals(true, factory.getProperty(XMLInputFactory.IS_NAMESPACE_AWARE));
+        assertEquals(false, factory.getProperty(XMLInputFactory.IS_VALIDATING));
+        assertEquals(false, factory.getProperty(XMLInputFactory.SUPPORT_DTD));
+        assertEquals(false, factory.getProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES));
     }
 
-    public void testSplitTextBorder() {
-        Node parent = m_node.getParentNode();
-        int nChildCount = parent.getChildNodes().getLength();
-        ((Text) m_node).splitText(((Text) m_node).getLength());
-        assertEquals(nChildCount + 1, parent.getChildNodes().getLength());
-        ((Text) m_node).splitText(0);
-        assertEquals(nChildCount + 2, parent.getChildNodes().getLength());
-    }
-
-    //code coverage case; not sure why it's important
-    public void testSplitTextNoParent() {
-        m_node = m_doc.createTextNode("foobar");
-        ((Text) m_node).splitText(3);
-        assertEquals("foo", m_node.getNodeValue());
-    }
-
-    public void testSetNodeValue() {
-        m_node.setNodeValue("new text value");
-        assertEquals("new text value", m_node.getNodeValue());
-    }
-
-    public void moveToNode() {
-        m_node = m_doc.getFirstChild().getChildNodes().item(1);//"extended"
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-        moveToNode();
-    }
-
-    public void testDelete()throws Exception{
-        org.apache.xmlbeans.XmlObject o= org.apache.xmlbeans.XmlObject.Factory.parse("<foo/>");
-        Node d = o.newDomNode();
-        assertEquals("foo",d.getFirstChild().getLocalName());
+    public void testXmlInputFactoryPropertyOverrides() {
+        try {
+            System.setProperty(XMLBeansConstants.PROPERTY_LOAD_DTD_GRAMMAR, "true");
+            System.setProperty(XMLBeansConstants.PROPERTY_LOAD_EXTERNAL_DTD, "true");
+            XMLInputFactory factory = StaxHelper.newXMLInputFactory();
+            assertEquals(true, factory.getProperty(XMLInputFactory.SUPPORT_DTD));
+            assertEquals(true, factory.getProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES));
+        } finally {
+            System.clearProperty(XMLBeansConstants.PROPERTY_LOAD_DTD_GRAMMAR);
+            System.clearProperty(XMLBeansConstants.PROPERTY_LOAD_EXTERNAL_DTD);
+        }
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org