[richfaces-svn-commits] JBoss Rich Faces SVN: r9155 - trunk/ui/tree/src/test/java/org/richfaces/component.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Mon Jun 23 07:45:51 EDT 2008


Author: dmorozov
Date: 2008-06-23 07:45:51 -0400 (Mon, 23 Jun 2008)
New Revision: 9155

Modified:
   trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
Log:
Fix tests which failed due to event queuing now processed on nodes, not on tree.

Modified: trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
===================================================================
--- trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java	2008-06-20 22:29:21 UTC (rev 9154)
+++ trunk/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java	2008-06-23 11:45:51 UTC (rev 9155)
@@ -37,14 +37,9 @@
 import javax.faces.context.FacesContext;
 import javax.faces.event.AbortProcessingException;
 import javax.faces.event.PhaseId;
-import javax.servlet.http.HttpServletResponse;
 
-import org.ajax4jsf.resource.InternetResource;
-import org.ajax4jsf.resource.InternetResourceBuilder;
-import org.ajax4jsf.resource.ResourceBuilderImpl;
 import org.ajax4jsf.resource.image.ImageInfo;
 import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
-import org.ajax4jsf.tests.HtmlTestUtils;
 import org.apache.commons.lang.StringUtils;
 import org.richfaces.component.state.events.ExpandAllCommandEvent;
 import org.richfaces.component.xml.XmlTreeDataBuilder;
@@ -59,7 +54,6 @@
 import org.richfaces.model.ListRowKey;
 import org.xml.sax.InputSource;
 
-import com.gargoylesoftware.htmlunit.Page;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlLink;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
@@ -473,14 +467,14 @@
 		NodeExpandedEvent nodeExpandedEvent = new NodeExpandedEvent(tree);
 		NodeSelectedEvent nodeSelectedEvent = new NodeSelectedEvent(tree, null);
 		ExpandAllCommandEvent expandAllCommandEvent = new ExpandAllCommandEvent(tree);
-		DragEvent dragEvent = new DragEvent(tree);
-		DropEvent dropEvent = new DropEvent(tree);
+		DragEvent dragEvent = new DragEvent(treeNode);
+		DropEvent dropEvent = new DropEvent(treeNode);
 
 		tree.queueEvent(nodeExpandedEvent);
 		tree.queueEvent(nodeSelectedEvent);
 		tree.queueEvent(expandAllCommandEvent);
-		tree.queueEvent(dragEvent);
-		tree.queueEvent(dropEvent);
+		treeNode.queueEvent(dragEvent);
+		treeNode.queueEvent(dropEvent);
 
 		assertEquals(PhaseId.INVOKE_APPLICATION, nodeExpandedEvent.getPhaseId());
 		assertEquals(PhaseId.UPDATE_MODEL_VALUES, nodeSelectedEvent.getPhaseId());
@@ -498,14 +492,14 @@
 		NodeExpandedEvent nodeExpandedEvent = new NodeExpandedEvent(tree);
 		NodeSelectedEvent nodeSelectedEvent = new NodeSelectedEvent(tree, null);
 		ExpandAllCommandEvent expandAllCommandEvent = new ExpandAllCommandEvent(tree);
-		DragEvent dragEvent = new DragEvent(tree);
-		DropEvent dropEvent = new DropEvent(tree);
+		DragEvent dragEvent = new DragEvent(treeNode);
+		DropEvent dropEvent = new DropEvent(treeNode);
 
 		tree.queueEvent(nodeExpandedEvent);
 		tree.queueEvent(nodeSelectedEvent);
 		tree.queueEvent(expandAllCommandEvent);
-		tree.queueEvent(dragEvent);
-		tree.queueEvent(dropEvent);
+		treeNode.queueEvent(dragEvent);
+		treeNode.queueEvent(dropEvent);
 
 		assertEquals(PhaseId.APPLY_REQUEST_VALUES, nodeExpandedEvent.getPhaseId());
 		assertEquals(PhaseId.APPLY_REQUEST_VALUES, nodeSelectedEvent.getPhaseId());
@@ -825,6 +819,102 @@
 		assertEquals("dropEnd2", treeNode.getOndropend());
 
 	}
+	
+	/**
+	 * Test drag & drop events processing order.
+	 * Drag & drop events ALWAYS should go after all other events
+	 * moreover drag should go always before it's pair drop event
+	 */
+	public final void testDnDListenersOrder() {
+		NodeExpandedListener expandingListener = new NodeExpandedListener() {
+
+			public void processExpansion(NodeExpandedEvent nodeExpandedEvent)
+			throws AbortProcessingException {
+				System.out.println("node expanded");
+			}
+
+		};
+		NodeSelectedListener selectionListener = new NodeSelectedListener() {
+
+			public void processSelection(NodeSelectedEvent nodeSelectedEvent)
+			throws AbortProcessingException {
+				System.out.println("node selected");
+			}
+
+		};
+		DropListener dropListener = new DropListener() {
+
+			public void processDrop(DropEvent event) {
+				System.out.println("node dropped");
+			}
+
+		};
+		DragListener dragListener = new DragListener() {
+
+			public void processDrag(DragEvent event) {
+				System.out.println("node dragged");
+			}
+
+		};		
+
+		// ------------- Install listeners -----------------
+		// add expansion listener
+		tree.addChangeExpandListener(expandingListener);
+		treeNode.addChangeExpandListener(expandingListener);
+		assertTrue(tree.getChangeExpandListeners().length == 1);
+		assertTrue(treeNode.getChangeExpandListeners().length == 1);
+		
+		// add selection listener
+		tree.addNodeSelectListener(selectionListener);
+		treeNode.addNodeSelectListener(selectionListener);
+		assertTrue(tree.getNodeSelectListeners().length == 1);
+		assertTrue(treeNode.getNodeSelectListeners().length == 1);
+		
+		tree.addDropListener(dropListener);
+		treeNode.addDropListener(dropListener);
+		assertTrue(tree.getDropListeners().length == 1);
+		assertTrue(treeNode.getDropListeners().length == 1);
+
+		tree.addDragListener(dragListener);
+		treeNode.addDragListener(dragListener);
+		assertTrue(tree.getDropListeners().length == 1);
+		assertTrue(treeNode.getDropListeners().length == 1);
+
+		// ------------ Invoke listeners --------------------
+		NodeExpandedEvent nodeExpandedEvent = new NodeExpandedEvent(tree);
+		NodeSelectedEvent nodeSelectedEvent = new NodeSelectedEvent(tree, null);
+		ExpandAllCommandEvent expandAllCommandEvent = new ExpandAllCommandEvent(tree);
+		DragEvent dragEvent = new DragEvent(tree);
+		DropEvent dropEvent = new DropEvent(tree);
+
+		tree.queueEvent(nodeExpandedEvent);
+		tree.queueEvent(dropEvent);
+		tree.queueEvent(nodeSelectedEvent);
+		tree.queueEvent(dragEvent);
+		tree.queueEvent(expandAllCommandEvent);
+		
+		facesContext.getViewRoot().processApplication(facesContext);
+
+		/*
+		assertEquals(PhaseId.INVOKE_APPLICATION, nodeExpandedEvent.getPhaseId());
+		assertEquals(PhaseId.UPDATE_MODEL_VALUES, nodeSelectedEvent.getPhaseId());
+		assertEquals(PhaseId.INVOKE_APPLICATION, expandAllCommandEvent.getPhaseId());
+		assertEquals(PhaseId.INVOKE_APPLICATION, dragEvent.getPhaseId());
+		assertEquals(PhaseId.INVOKE_APPLICATION, dropEvent.getPhaseId());
+		 */
+		
+		// ------------ Cleanup --------------------
+		// cleanup listeners
+		tree.removeChangeExpandListener(expandingListener);
+		treeNode.removeChangeExpandListener(expandingListener);
+		tree.removeNodeSelectListener(selectionListener);
+		treeNode.removeNodeSelectListener(selectionListener);
+		tree.removeDropListener(dropListener);
+		treeNode.removeDropListener(dropListener);
+		tree.removeDragListener(dragListener);
+		treeNode.removeDragListener(dragListener);
+	}
+
 }
 
 




More information about the richfaces-svn-commits mailing list