Author: andrei_exadel
Date: 2008-11-27 07:43:06 -0500 (Thu, 27 Nov 2008)
New Revision: 11411
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDListener.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dnd/dndTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DnDTest.java
Log:
RF-5020
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDBean.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDBean.java 2008-11-27
12:20:46 UTC (rev 11410)
+++
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDBean.java 2008-11-27
12:43:06 UTC (rev 11411)
@@ -12,10 +12,14 @@
*/
public class DnDBean {
- public static final String DRAGLISTENER = "DragListener";
+ public static final String DRAGLISTENER = "DragListener,";
- public static final String DROPLISTENER = "DropListener";
+ public static final String DROPLISTENER = "DropListener,";
+ public static final String RICHDROPLISTENER = "RichDropListener,";
+
+ public static final String RICHDRAGLISTENER = "RichDragListener,";
+
private List<Framework> containerPHP;
private List<Framework> containerCF;
@@ -98,12 +102,12 @@
public void processDropMethod(DropEvent event) {
Dropzone dropzone = (Dropzone) event.getComponent();
moveFramework(event.getDragValue(), dropzone.getDropValue());
- status += getStatus() + DROPLISTENER;
+ status += DROPLISTENER;
}
public void processDragMethod(DragEvent event) {
event.getAcceptedTypes();
- status += getStatus() + DRAGLISTENER;
+ status += DRAGLISTENER;
dragValue = event.getDragValue();
dropValue = event.getDropValue();
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDListener.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDListener.java 2008-11-27
12:20:46 UTC (rev 11410)
+++
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DnDListener.java 2008-11-27
12:43:06 UTC (rev 11411)
@@ -25,6 +25,8 @@
// DropListener implementation
//
public void processDrag(DragEvent event) {
+ DnDBean bean = getDnDBean();
+ bean.setStatus(bean.getStatus() + DnDBean.RICHDRAGLISTENER);
}
//
@@ -32,7 +34,9 @@
//
public void processDrop(DropEvent event) {
Dropzone dropzone = (Dropzone) event.getComponent();
- getDnDBean().moveFramework(event.getDragValue(), dropzone.getDropValue());
+ DnDBean bean = getDnDBean();
+ bean.moveFramework(event.getDragValue(), dropzone.getDropValue());
+ bean.setStatus(bean.getStatus() + DnDBean.RICHDROPLISTENER);
}
}
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dnd/dndTest.xhtml
===================================================================
(Binary files differ)
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DnDTest.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DnDTest.java 2008-11-27
12:20:46 UTC (rev 11410)
+++
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DnDTest.java 2008-11-27
12:43:06 UTC (rev 11411)
@@ -1,5 +1,9 @@
package org.richfaces.testng;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.ajax4jsf.bean.DnDBean;
import org.ajax4jsf.template.Template;
import org.richfaces.SeleniumTestBase;
import org.testng.Assert;
@@ -19,6 +23,7 @@
String dnetDropZoneId;
String cfDropZoneId;
String itemsHolderId;
+ String resetButtonId;
void initIds(String parentId) {
statusId = parentId + FORMID + "status";
@@ -28,6 +33,7 @@
dnetDropZoneId = parentId + FORMID + "DNET";
cfDropZoneId = parentId + FORMID + "CF";
itemsHolderId = parentId + FORMID + DATAID;
+ resetButtonId = parentId + FORMID + DATAID + "reset";
}
@Override
@@ -35,50 +41,76 @@
return "c:/FFProfile";
}
- @Test
+ //@Test
public void testDragValue(Template template) {
renderPage(template, RESET_METHOD);
initIds(getParentId());
DragAndDrop(0, phpDropZoneId);
- waitForAjaxCompletion();
assertDragValue("Flexible Ajax", phpDropZoneId);
DragAndDrop(1, dnetDropZoneId);
- waitForAjaxCompletion();
assertDragValue("AJAXEngine", dnetDropZoneId);
DragAndDrop(0, cfDropZoneId);
- waitForAjaxCompletion();
assertDragValue("ajaxCFC", cfDropZoneId);
}
- // @Test
+ //@Test
public void testDropValue(Template template) {
renderPage(template, RESET_METHOD);
initIds(getParentId());
DragAndDrop(0, phpDropZoneId);
- waitForAjaxCompletion();
assertDropValue("PHP");
testDropData();
DragAndDrop(1, dnetDropZoneId);
- waitForAjaxCompletion();
assertDropValue("DNET");
testDropData();
DragAndDrop(0, cfDropZoneId);
- waitForAjaxCompletion();
assertDropValue("CF");
testDropData();
}
+ //@Test
+ public void testListeners(Template template) {
+ renderPage(template, RESET_METHOD);
+ initIds(getParentId());
+
+ DragAndDrop(0, phpDropZoneId);
+ assertListeners(DnDBean.RICHDRAGLISTENER, DnDBean.DRAGLISTENER,
DnDBean.DROPLISTENER);
+
+ clickAjaxCommandAndWait(resetButtonId);
+
+ DragAndDrop(1, cfDropZoneId);
+ assertListeners(DnDBean.RICHDRAGLISTENER, DnDBean.DRAGLISTENER,
DnDBean.RICHDROPLISTENER);
+
+
+ }
+
+ @Test
+ public void testEvents(Template template) {
+ renderPage(template, RESET_METHOD);
+ initIds(getParentId());
+
+ DragAndDrop(0, phpDropZoneId);
+ List<String> eventsExpected = new ArrayList<String>();
+
+ eventsExpected.add("ondragstart");
+ eventsExpected.add("ondragenter");
+ eventsExpected.add("ondragend");
+ eventsExpected.add("ondrop");
+ eventsExpected.add("ondropend");
+
+ assertEvents(eventsExpected);
+ }
-
void DragAndDrop(int itemNumber, String dropZoneId) {
selenium.dragAndDropToObject("id=" + itemsHolderId + itemNumber +
":item", "id=" + dropZoneId + "_body");
+ waitForAjaxCompletion();
}
void testDropData () {
@@ -104,8 +136,28 @@
AssertTextEquals(dropValueId, expectedValue, "Drop Value is incorrect");
}
+ void assertListeners(String ... listener ) {
+ String status = getStatusValue();
+ String s = status;
+ String sum = "";
+ for (String l : listener) {
+ if (status.indexOf(l) == -1) {
+ Assert.fail(l + " has been skipped");
+ }else {
+ s = s.replace(l, "");
+ }
+ sum += l;
+ }
+ if (s.length() > 0) {
+ Assert.fail("The following listener were called but shouldn't: " +
s);
+ }
+ if (!status.equals(sum)) {
+ Assert.fail("Order of listeners call is incorrect. Should be: " + sum +
". But was : " + status);
+ }
+ }
+
String getStatusValue() {
- return getValueById(statusId);
+ return getTextById(statusId);
}
@Override