bwalding 2003/07/17 02:33:12
Modified: src/plugins-build/xdoc/src/test/org/apache/maven
NavBeanTest.java
src/plugins-build/xdoc/src/main/org/apache/maven
NavBean.java
Log:
Allow the nav bean to count children. This could be done directly in jelly, but I
hate jelly. And I can write
test cases in the same format as the other test cases.
PR: MAVEN-579
Revision Changes Path
1.3 +41 -22
maven/src/plugins-build/xdoc/src/test/org/apache/maven/NavBeanTest.java
Index: NavBeanTest.java
===================================================================
RCS file:
/home/cvs/maven/src/plugins-build/xdoc/src/test/org/apache/maven/NavBeanTest.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- NavBeanTest.java 10 Mar 2003 14:15:30 -0000 1.2
+++ NavBeanTest.java 17 Jul 2003 09:33:12 -0000 1.3
@@ -64,6 +64,7 @@
import org.dom4j.Document;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
+import org.dom4j.tree.DefaultElement;
/**
* @author <a href="[EMAIL PROTECTED]">Ben Walding</a>
@@ -80,7 +81,6 @@
testResources = new File(System.getProperty("basedir") +
"/src/test-resources");
nb = new NavBean();
nb.setDocument(getTestDocument());
-
}
class Test
@@ -101,29 +101,29 @@
return reader.read(new FileInputStream(new File(testResources,
"navigation.xml")));
}
- public void testAll() throws Exception
+ public void testCollapsed() throws Exception
{
- test("/alpha/index.html", "/alpha/index.html", false);
- test("/alpha/one/index.html", "/alpha/index.html", false);
- test("/alpha/two/index.html", "/alpha/index.html", false);
- test("/beta/index.html", "/alpha/index.html", true);
-
- test("/alpha/index.html", "/beta/index.html", false);
- test("/alpha/one/index.html", "/beta/index.html", false);
- test("/alpha/two/index.html", "/beta/index.html", false);
- test("/beta/index.html", "/beta/index.html", false);
- test("/beta/one/index.html", "/beta/index.html", true);
- test("/beta/two/index.html", "/beta/index.html", true);
-
- test("/alpha/index.html", "beta/index.html", false);
- test("/alpha/one/index.html", "beta/index.html", false);
- test("/alpha/two/index.html", "beta/index.html", false);
- test("/beta/index.html", "beta/index.html", false);
- test("/beta/one/index.html", "beta/index.html", true);
- test("/beta/two/index.html", "beta/index.html", true);
+ testCollapsed("/alpha/index.html", "/alpha/index.html", false);
+ testCollapsed("/alpha/one/index.html", "/alpha/index.html", false);
+ testCollapsed("/alpha/two/index.html", "/alpha/index.html", false);
+ testCollapsed("/beta/index.html", "/alpha/index.html", true);
+
+ testCollapsed("/alpha/index.html", "/beta/index.html", false);
+ testCollapsed("/alpha/one/index.html", "/beta/index.html", false);
+ testCollapsed("/alpha/two/index.html", "/beta/index.html", false);
+ testCollapsed("/beta/index.html", "/beta/index.html", false);
+ testCollapsed("/beta/one/index.html", "/beta/index.html", true);
+ testCollapsed("/beta/two/index.html", "/beta/index.html", true);
+
+ testCollapsed("/alpha/index.html", "beta/index.html", false);
+ testCollapsed("/alpha/one/index.html", "beta/index.html", false);
+ testCollapsed("/alpha/two/index.html", "beta/index.html", false);
+ testCollapsed("/beta/index.html", "beta/index.html", false);
+ testCollapsed("/beta/one/index.html", "beta/index.html", true);
+ testCollapsed("/beta/two/index.html", "beta/index.html", true);
}
- public void test(String href, String location, boolean expected)
+ public void testCollapsed(String href, String location, boolean expected)
{
nb.setLocation(location);
@@ -133,5 +133,24 @@
String s = "At location " + location + ", looking to generate link to " +
href + ", expecting collapse = " + expected;
assertEquals(s, expected, nb.isCollapsed(node));
}
+
+ public void testCountChildren() throws Exception
+ {
+ testCountChildren("/alpha/index.html", 2);
+ testCountChildren("/alpha/one/index.html", 0);
+ testCountChildren("/alpha/two/index.html", 0);
+
+ testCountChildren("/beta/index.html", 2);
+ testCountChildren("/beta/one/index.html", 0);
+ testCountChildren("/beta/two/index.html", 0);
+ }
+ public void testCountChildren(String href, int expected)
+ {
+ Node node = nb.getFirstNodeByHREF(href);
+ assertNotNull(node);
+
+ String s = "At location " + href + ", expecting countChildren = " +
expected;
+ assertEquals(s, expected, nb.countChildren((DefaultElement) node));
+ }
}
1.5 +11 -1
maven/src/plugins-build/xdoc/src/main/org/apache/maven/NavBean.java
Index: NavBean.java
===================================================================
RCS file:
/home/cvs/maven/src/plugins-build/xdoc/src/main/org/apache/maven/NavBean.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- NavBean.java 10 Mar 2003 14:18:41 -0000 1.4
+++ NavBean.java 17 Jul 2003 09:33:12 -0000 1.5
@@ -95,6 +95,16 @@
{
return getAttribute(elem, "href", null);
}
+
+ /**
+ * Assumes that the node is visible.
+ * @param o
+ * @return the number of children for this node
+ */
+ public int countChildren(DefaultElement elem) {
+ List l = elem.selectNodes("./item");
+ return l.size();
+ }
/**
* Determines if the given node is collapsed. If a parent of this node is
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]