vgritsenko 2004/08/28 18:32:42
Modified: java/tests/src/org/apache/xindice/xml/dom
TreeWalkerTest.java
Log:
improve treewalker test
Revision Changes Path
1.2 +50 -2
xml-xindice/java/tests/src/org/apache/xindice/xml/dom/TreeWalkerTest.java
Index: TreeWalkerTest.java
===================================================================
RCS file:
/home/cvs/xml-xindice/java/tests/src/org/apache/xindice/xml/dom/TreeWalkerTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TreeWalkerTest.java 27 Aug 2004 16:13:39 -0000 1.1
+++ TreeWalkerTest.java 29 Aug 2004 01:32:42 -0000 1.2
@@ -22,6 +22,7 @@
import junit.framework.TestCase;
import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
import org.w3c.dom.traversal.NodeFilter;
import org.w3c.dom.traversal.TreeWalker;
@@ -57,6 +58,29 @@
assertEquals("a", tw.getRoot().getLocalName());
}
+ public void testWhatToShow() throws Exception {
+ TreeWalker tw = new TreeWalkerImpl(dom, NodeFilter.SHOW_COMMENT,
null, false);
+ assertEquals(NodeFilter.SHOW_COMMENT, tw.getWhatToShow());
+ assertEquals(null, tw.nextNode());
+ }
+
+ public void testFilter() throws Exception {
+ NodeFilter nf = new NodeFilter() {
+ public short acceptNode(Node node) {
+ if ("b".equals(node.getNodeName()) ||
"f".equals(node.getNodeName())) {
+ return NodeFilter.FILTER_ACCEPT;
+ }
+ return NodeFilter.FILTER_SKIP;
+ }
+ };
+
+ TreeWalker tw = new TreeWalkerImpl(dom, NodeFilter.SHOW_ALL, nf,
false);
+ assertEquals(nf, tw.getFilter());
+ assertEquals("b", tw.nextNode().getNodeName());
+ assertEquals("f", tw.nextNode().getNodeName());
+ assertEquals(null, tw.nextNode());
+ }
+
public void testNextNode() throws Exception {
TreeWalker tw = new TreeWalkerImpl(dom, NodeFilter.SHOW_ALL, null,
false);
assertEquals("a", tw.getCurrentNode().getLocalName());
@@ -99,5 +123,29 @@
assertEquals("i", tw.getCurrentNode().getLocalName());
assertEquals(null, tw.nextNode());
assertEquals("i", tw.getCurrentNode().getLocalName());
+
+ try {
+ tw.setCurrentNode(null);
+ fail("Exception expected");
+ } catch (DOMException e) {
+ }
+ assertEquals("i", tw.getCurrentNode().getLocalName());
+ }
+
+ public void testParentNode() throws Exception {
+ TreeWalker tw = new TreeWalkerImpl(dom, NodeFilter.SHOW_ALL, null,
false);
+ // Go to F node
+ tw.nextNode();
+ tw.nextNode();
+ tw.nextNode();
+ tw.nextNode();
+ tw.nextNode();
+ assertEquals("f", tw.getCurrentNode().getLocalName());
+
+ assertEquals("d", tw.parentNode().getLocalName());
+ assertEquals("c", tw.parentNode().getLocalName());
+ assertEquals("a", tw.parentNode().getLocalName());
+ assertEquals(null, tw.parentNode());
}
+
}