From 8d946234d35c865c3069a06e30a2e7aaa8570afa Mon Sep 17 00:00:00 2001 From: elharo Date: Tue, 7 Jul 2026 22:03:59 +0000 Subject: [PATCH] Convert dom.treewalker.TestFirstChild to JUnit 3 --- build.xml | 1 + tests/dom/treewalker/TestFirstChild.java | 59 ++++++++++++++---------- 2 files changed, 36 insertions(+), 24 deletions(-) diff --git a/build.xml b/build.xml index e966db9545..fd0a05dc11 100644 --- a/build.xml +++ b/build.xml @@ -845,6 +845,7 @@ Authors: --> + diff --git a/tests/dom/treewalker/TestFirstChild.java b/tests/dom/treewalker/TestFirstChild.java index ddf211d3fe..0b3439a05d 100644 --- a/tests/dom/treewalker/TestFirstChild.java +++ b/tests/dom/treewalker/TestFirstChild.java @@ -25,6 +25,8 @@ import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; +import junit.framework.TestCase; + import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; @@ -41,32 +43,41 @@ * @author Christian Geuer-Pollmann * @version $Id$ */ -public class TestFirstChild { - - public static void main(String args[]) throws Exception { - +public class TestFirstChild extends TestCase { - System.out.println(" --- " - + org.apache.xerces.impl.Version.getVersion() - + " --- "); + public void testTreeWalkerFirstChild() throws Exception { Document doc = getNodeSet1(); - NodeFilter nodefilter = null; - boolean entityReferenceExpansion = true; - int whatToShow = NodeFilter.SHOW_ALL; - TreeWalker treewalker = - ((DocumentTraversal) doc).createTreeWalker(doc, whatToShow, - nodefilter, entityReferenceExpansion); - ByteArrayOutputStream bytearrayoutputstream = - new ByteArrayOutputStream(); - PrintWriter printwriter = - new PrintWriter(new OutputStreamWriter(bytearrayoutputstream, - "UTF8")); - - process2(treewalker, printwriter); - printwriter.flush(); - - System.out.println(); - System.out.println("Testing the following XML document:\n" + new String(bytearrayoutputstream.toByteArray())); + TreeWalker treewalker = ((DocumentTraversal) doc).createTreeWalker( + doc, NodeFilter.SHOW_ALL, null, true); + + // Starting at document, first child should be RootElement + Node first = treewalker.firstChild(); + assertNotNull("Should have first child", first); + assertEquals("RootElement", first.getNodeName()); + + // First child of RootElement should be Element1 + Node child = treewalker.firstChild(); + assertNotNull("RootElement should have children", child); + assertEquals("Element1", child.getNodeName()); + + // Next sibling should be Element2 + Node next = treewalker.nextSibling(); + assertNotNull("Should have next sibling", next); + assertEquals("Element2", next.getNodeName()); + + // Next sibling should be Element3 + next = treewalker.nextSibling(); + assertNotNull("Should have next sibling", next); + assertEquals("Element3", next.getNodeName()); + + // First child of Element3 should be text node + child = treewalker.firstChild(); + assertNotNull("Element3 should have text child", child); + assertEquals(Node.TEXT_NODE, child.getNodeType()); + assertEquals("Text in Element3", child.getNodeValue()); + + // Should be no next sibling for this text node + assertNull("Text node should have no next sibling", treewalker.nextSibling()); } /**