Author: dmorozov
Date: 2008-07-17 10:08:28 -0400 (Thu, 17 Jul 2008)
New Revision: 9658
Modified:
trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
Log:
Add Unit test for tree node state manipulation
Modified: trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
===================================================================
--- trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java 2008-07-17
14:02:58 UTC (rev 9657)
+++ trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java 2008-07-17
14:08:28 UTC (rev 9658)
@@ -41,6 +41,7 @@
import org.ajax4jsf.resource.image.ImageInfo;
import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
import org.apache.commons.lang.StringUtils;
+import org.richfaces.component.state.TreeState;
import org.richfaces.component.state.events.ExpandAllCommandEvent;
import org.richfaces.component.xml.XmlTreeDataBuilder;
import org.richfaces.event.DragEvent;
@@ -54,6 +55,7 @@
import org.richfaces.model.ListRowKey;
import org.richfaces.model.TreeNode;
import org.richfaces.model.TreeNodeImpl;
+import org.richfaces.model.TreeRowKey;
import org.xml.sax.InputSource;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
@@ -953,6 +955,40 @@
tree.setRowKey(rowKey);
assertFalse(tree.isRowAvailable());
}
+
+ public final void testManipulateState() {
+ TreeNode rootNode = new TreeNodeImpl<String>();
+ rootNode.setData("root");
+ tree.setValue(rootNode);
+ tree.setPreserveModel("");
+
+ TreeNode<String> newNode = new TreeNodeImpl<String>();
+ newNode.setData("Sample node");
+ tree.addNode(facesContext, null, newNode, new Integer(111), null);
+ TreeRowKey rowKey = (TreeRowKey)tree.getTreeNodeRowKey(newNode);
+
+ TreeNode<String> newSubNode = new TreeNodeImpl<String>();
+ newSubNode.setData("Sample sub node");
+ tree.addNode(facesContext, rowKey, newSubNode, new Integer(1), null);
+
+ tree.setRowKey(null);
+
+ TreeState state = new TreeState();
+ try {
+ state.expandAll(tree);
+ } catch (Exception e) {
+ System.out.println("testManipulateState expandAll failed");
+ }
+
+ tree.setRowKey(rowKey);
+ assertTrue(state.isExpanded(rowKey));
+
+ TreeState oldState = (TreeState)state.getSubState(rowKey);
+ state.clearSubState(rowKey);
+ assertTrue(!state.isExpanded(rowKey));
+ state.mergeSubState(rowKey, oldState);
+ assertTrue(state.isExpanded(rowKey));
+ }
}
Show replies by date