You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by mr...@apache.org on 2009/03/08 20:26:59 UTC
svn commit: r751506 - in /xerces/java/trunk/tests/dom/traversal:
AbstractTestCase.java AllTests.java ComplexTest.java
Author: mrglavas
Date: Sun Mar 8 19:26:59 2009
New Revision: 751506
URL: http://svn.apache.org/viewvc?rev=751506&view=rev
Log:
Additional tests for the Element Traversal API with documents containing entity references.
Added:
xerces/java/trunk/tests/dom/traversal/ComplexTest.java (with props)
Modified:
xerces/java/trunk/tests/dom/traversal/AbstractTestCase.java
xerces/java/trunk/tests/dom/traversal/AllTests.java
Modified: xerces/java/trunk/tests/dom/traversal/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/xerces/java/trunk/tests/dom/traversal/AbstractTestCase.java?rev=751506&r1=751505&r2=751506&view=diff
==============================================================================
--- xerces/java/trunk/tests/dom/traversal/AbstractTestCase.java (original)
+++ xerces/java/trunk/tests/dom/traversal/AbstractTestCase.java Sun Mar 8 19:26:59 2009
@@ -44,6 +44,7 @@
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
+ dbf.setExpandEntityReferences(false);
fDocumentBuilder = dbf.newDocumentBuilder();
}
catch (ParserConfigurationException pce) {
Modified: xerces/java/trunk/tests/dom/traversal/AllTests.java
URL: http://svn.apache.org/viewvc/xerces/java/trunk/tests/dom/traversal/AllTests.java?rev=751506&r1=751505&r2=751506&view=diff
==============================================================================
--- xerces/java/trunk/tests/dom/traversal/AllTests.java (original)
+++ xerces/java/trunk/tests/dom/traversal/AllTests.java Sun Mar 8 19:26:59 2009
@@ -36,6 +36,7 @@
public static Test suite() {
TestSuite suite = new TestSuite("Tests for the Element Traversal API.");
suite.addTestSuite(BasicTest.class);
+ suite.addTestSuite(ComplexTest.class);
return suite;
}
Added: xerces/java/trunk/tests/dom/traversal/ComplexTest.java
URL: http://svn.apache.org/viewvc/xerces/java/trunk/tests/dom/traversal/ComplexTest.java?rev=751506&view=auto
==============================================================================
--- xerces/java/trunk/tests/dom/traversal/ComplexTest.java (added)
+++ xerces/java/trunk/tests/dom/traversal/ComplexTest.java Sun Mar 8 19:26:59 2009
@@ -0,0 +1,144 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+package dom.traversal;
+
+import org.w3c.dom.Element;
+import org.w3c.dom.ElementTraversal;
+
+/**
+ * @author Michael Glavassevich, IBM
+ * @version $Id$
+ */
+public class ComplexTest extends AbstractTestCase {
+
+ private static final String DOC1 = "<?xml version='1.0' encoding='UTF-8'?>" +
+ "<!DOCTYPE root [" +
+ "<!ENTITY a '<r/>0<s/>'>" +
+ "<!ENTITY b '1&a;<t/>&a;2'>" +
+ "<!ENTITY c '&b;'>" +
+ "]><root>&c;3<i/>&c;</root>";
+
+ private static final String DOC2 = "<?xml version='1.0' encoding='UTF-8'?>" +
+ "<!DOCTYPE root [" +
+ "<!ENTITY a '<child/>'>" +
+ "<!ENTITY b '<!-- comment -->&a;<![CDATA[text]]>'>" +
+ "<!ENTITY c '&b;'>" +
+ "]><root>&c;</root>";
+
+ public void testGetFirstChild1() {
+ ElementTraversal et = parse(DOC1);
+ Element e = et.getFirstElementChild();
+ assertEquals("r", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getFirstElementChild();
+ assertNull(e);
+ }
+
+ public void testGetFirstChild2() {
+ ElementTraversal et = parse(DOC2);
+ Element e = et.getFirstElementChild();
+ assertEquals("child", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getFirstElementChild();
+ assertNull(e);
+ }
+
+ public void testGetLastChild1() {
+ ElementTraversal et = parse(DOC1);
+ Element e = et.getLastElementChild();
+ assertEquals("s", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getLastElementChild();
+ assertNull(e);
+ }
+
+ public void testGetLastChild2() {
+ ElementTraversal et = parse(DOC2);
+ Element e = et.getLastElementChild();
+ assertEquals("child", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getLastElementChild();
+ assertNull(e);
+ }
+
+ public void testGetNextElementSibling1() {
+ ElementTraversal et = parse(DOC1);
+ Element e = et.getFirstElementChild();
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertEquals("s", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertEquals("t", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertEquals("r", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertEquals("s", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertEquals("i", e.getNodeName());
+ }
+
+ public void testGetNextElementSibling2() {
+ ElementTraversal et = parse(DOC2);
+ Element e = et.getFirstElementChild();
+ et = toElementTraversal(e);
+ e = et.getNextElementSibling();
+ assertNull(e);
+ }
+
+ public void testGetPreviousElementSibling1() {
+ ElementTraversal et = parse(DOC1);
+ Element e = et.getLastElementChild();
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertEquals("r", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertEquals("t", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertEquals("s", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertEquals("r", e.getNodeName());
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertEquals("i", e.getNodeName());
+ }
+
+ public void testGetPreviousElementSibling2() {
+ ElementTraversal et = parse(DOC2);
+ Element e = et.getLastElementChild();
+ et = toElementTraversal(e);
+ e = et.getPreviousElementSibling();
+ assertNull(e);
+ }
+
+ public void testChildElementCount1() {
+ ElementTraversal et = parse(DOC1);
+ assertEquals(11, et.getChildElementCount());
+ }
+
+ public void testChildElementCount2() {
+ ElementTraversal et = parse(DOC2);
+ assertEquals(1, et.getChildElementCount());
+ }
+}
Propchange: xerces/java/trunk/tests/dom/traversal/ComplexTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xerces/java/trunk/tests/dom/traversal/ComplexTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org