Author: alexsmirnov
Date: 2007-09-27 16:55:15 -0400 (Thu, 27 Sep 2007)
New Revision: 3159
Modified:
trunk/ui/drag-drop/src/test/java/org/richfaces/component/DragDropTest.java
Log:
fix for
http://jira.jboss.org/jira/browse/RF-1004
Modified: trunk/ui/drag-drop/src/test/java/org/richfaces/component/DragDropTest.java
===================================================================
--- trunk/ui/drag-drop/src/test/java/org/richfaces/component/DragDropTest.java 2007-09-27
20:54:49 UTC (rev 3158)
+++ trunk/ui/drag-drop/src/test/java/org/richfaces/component/DragDropTest.java 2007-09-27
20:55:15 UTC (rev 3159)
@@ -1,16 +1,19 @@
package org.richfaces.component;
-
+
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
+import java.util.NoSuchElementException;
import java.util.Set;
import javax.faces.component.UIComponent;
import javax.faces.component.UIPanel;
import javax.faces.component.html.HtmlForm;
+import javax.faces.event.FacesEvent;
import javax.faces.event.PhaseId;
import javax.servlet.http.HttpServletResponse;
+import org.ajax4jsf.event.EventsQueue;
import org.ajax4jsf.resource.InternetResource;
import org.ajax4jsf.resource.InternetResourceBuilder;
import org.ajax4jsf.resource.ResourceBuilderImpl;
@@ -26,13 +29,13 @@
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlScript;
- /**
- * Unit test for simple Component.
- */
+/**
+ * Unit test for simple Component.
+ */
public class DragDropTest extends AbstractAjax4JsfTestCase {
-
+
private UIDndParam dndparam;
-
+
private UIDragIndicator dndindicator;
private UIDragSupport dragsupport;
@@ -44,7 +47,7 @@
private UIComponent form;
private static final String CSS_FILE_PATH =
"org/richfaces/renderkit/html/css/dragIndicator.xcss";
-
+
private static Set javaScripts = new HashSet();
static {
javaScripts.add("org.ajax4jsf.javascript.PrototypeScript");
@@ -53,27 +56,20 @@
javaScripts.add("org.ajax4jsf.javascript.DnDScript");
javaScripts.add("scripts/events.js");
javaScripts.add("scripts/utils.js");
- javaScripts
- .add("scripts/simple-draggable.js");
- javaScripts
- .add("scripts/simple-dropzone.js");
+ javaScripts.add("scripts/simple-draggable.js");
+ javaScripts.add("scripts/simple-dropzone.js");
javaScripts.add("scripts/json/json-mini.js");
- javaScripts
- .add("scripts/json/json-dom.js");
- javaScripts
- .add("scripts/dnd/dnd-common.js");
- javaScripts
- .add("scripts/dnd/dnd-dropzone.js");
- javaScripts
- .add("scripts/dnd/dnd-draggable.js");
- javaScripts
- .add("scripts/drag-indicator.js");
+ javaScripts.add("scripts/json/json-dom.js");
+ javaScripts.add("scripts/dnd/dnd-common.js");
+ javaScripts.add("scripts/dnd/dnd-dropzone.js");
+ javaScripts.add("scripts/dnd/dnd-draggable.js");
+ javaScripts.add("scripts/drag-indicator.js");
}
private static Set eventsSet = new HashSet();
static {
eventsSet.add("org.richfaces.component.html.HtmlDragSupport");
eventsSet.add("org.richfaces.component.html.HtmlDropSupport");
-
+
}
public DragDropTest(String testName) {
@@ -190,50 +186,58 @@
}
public void testDecode() throws Exception {
- externalContext.addRequestParameterMap(DraggableRendererContributor.DRAG_SOURCE_ID,
dragsupport.getClientId(facesContext));
- externalContext.addRequestParameterMap(DropzoneRendererContributor.DROP_TARGET_ID,
dropsupport.getClientId(facesContext));
+ externalContext.addRequestParameterMap(
+ DraggableRendererContributor.DRAG_SOURCE_ID, dragsupport
+ .getClientId(facesContext));
+ externalContext.addRequestParameterMap(
+ DropzoneRendererContributor.DROP_TARGET_ID, dropsupport
+ .getClientId(facesContext));
dragsupport.decode(facesContext);
dropsupport.decode(facesContext);
-
+
MockViewRoot root = (MockViewRoot) facesContext.getViewRoot();
- Buffer queue = root.getEventsQueue(facesContext, PhaseId.ANY_PHASE);
+ EventsQueue queue = root
+ .getEventsQueue(facesContext, PhaseId.ANY_PHASE);
assertNotNull(queue);
- Object[] events = queue.toArray();
- for(int i=0;i< events.length;i++)
- {
- boolean found = false;
- for (Iterator srcIt = eventsSet.iterator(); srcIt.hasNext();) {
- String src = (String) srcIt.next();
- found = events[i].toString().contains(src);
- if (found) {
- break;
+ while (true) {
+ try {
+ FacesEvent event = queue.remove();
+ boolean found = false;
+ for (Iterator srcIt = eventsSet.iterator(); srcIt.hasNext();) {
+ String src = (String) srcIt.next();
+ found = event.toString().contains(src);
+ if (found) {
+ break;
+ }
}
+ assertTrue(found);
+ } catch (NoSuchElementException e) {
+ break;
}
- assertTrue(found);
}
}
-
+
/**
- * Test style rendering
- *
- * @throws Exception
- */
- public void testRenderStyle() throws Exception {
- HtmlPage page = renderView();
- assertNotNull(page);
- List links =
page.getDocumentElement().getHtmlElementsByTagName("link");
- assertEquals(1, links.size());
- HtmlElement link = (HtmlElement) links.get(0);
- assertTrue(link.getAttributeValue("href").contains(CSS_FILE_PATH));
-
- InternetResourceBuilder builder = ResourceBuilderImpl.getInstance();
- InternetResource resource = builder.getResource(CSS_FILE_PATH);
- assertNotNull(resource);
- String uri = "http:" + resource.getUri(facesContext, null);
- Page cssFile = webClient.getPage(uri);
- assertNotNull(cssFile);
- assertTrue(cssFile.getWebResponse().getStatusCode() == HttpServletResponse.SC_OK);
- }
- }
+ * Test style rendering
+ *
+ * @throws Exception
+ */
+ public void testRenderStyle() throws Exception {
+ HtmlPage page = renderView();
+ assertNotNull(page);
+ List links = page.getDocumentElement().getHtmlElementsByTagName("link");
+ assertEquals(1, links.size());
+ HtmlElement link = (HtmlElement) links.get(0);
+ assertTrue(link.getAttributeValue("href").contains(CSS_FILE_PATH));
+
+ InternetResourceBuilder builder = ResourceBuilderImpl.getInstance();
+ InternetResource resource = builder.getResource(CSS_FILE_PATH);
+ assertNotNull(resource);
+ String uri = "http:" + resource.getUri(facesContext, null);
+ Page cssFile = webClient.getPage(uri);
+ assertNotNull(cssFile);
+ assertTrue(cssFile.getWebResponse().getStatusCode() == HttpServletResponse.SC_OK);
+ }
+}