Author: andrei_exadel
Date: 2009-01-21 05:10:53 -0500 (Wed, 21 Jan 2009)
New Revision: 12360
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuAutoTest.xhtml
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DropDownMenuTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DropDownMenuTest.java
Log:
RF-5805
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DropDownMenuTestBean.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DropDownMenuTestBean.java 2009-01-21
08:43:54 UTC (rev 12359)
+++
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DropDownMenuTestBean.java 2009-01-21
10:10:53 UTC (rev 12360)
@@ -23,6 +23,8 @@
public class DropDownMenuTestBean {
private String actionName = "";
+
+ private boolean immediate;
/**
* Gets value of actionName field.
@@ -31,6 +33,16 @@
public String getActionName() {
return actionName;
}
+
+ public void reset() {
+ actionName = "";
+ immediate = false;
+ }
+
+ public void initImmediateTest() {
+ reset();
+ immediate = true;
+ }
/**
* Set a new value for actionName field.
@@ -70,4 +82,20 @@
return null;
}
+ /**
+ * @return the immediate
+ */
+ public boolean getImmediate() {
+ return immediate;
+ }
+
+ /**
+ * @param immediate the immediate to set
+ */
+ public void setImmediate(boolean immediate) {
+ this.immediate = immediate;
+ }
+
+
+
}
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuAutoTest.xhtml
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuAutoTest.xhtml
(rev 0)
+++
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuAutoTest.xhtml 2009-01-21
10:10:53 UTC (rev 12360)
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:a4j="http://richfaces.org/a4j"
+
xmlns:rich="http://richfaces.org/rich"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<ui:composition template="#{templateBean.autoTestTemplate}">
+ <ui:define name="component">
+ <rich:dropDownMenu id="componentId"
+ actionListener="#{autoTestBean.actionListener}"
+ immediate="#{autoTestBean.immediate}"
+ ajaxSingle="#{autoTestBean.ajaxSingle}"
+ reRender="#{autoTestBean.reRender}"
+ limitToList="#{autoTestBean.limitToList}"
+ bypassUpdates="#{autoTestBean.bypassUpdate}"
+ rendered="#{autoTestBean.rendered}"
+ oncomplete="#{autoTestBean.oncomplete}"
+ >
+ <rich:menuItem id="new" submitMode="ajax"
value="New" action="#{ddmenuBean.doNew}"
actionListener="#{autoTestBean.actionListener}"/>
+ <f:param name="parameter1" value="value1" />
+ </rich:dropDownMenu>
+ </ui:define>
+</ui:composition>
+</html>
\ No newline at end of file
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dropDownMenu/dropDownMenuTest.xhtml
===================================================================
(Binary files differ)
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DropDownMenuTest.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DropDownMenuTest.java 2009-01-21
08:43:54 UTC (rev 12359)
+++
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DropDownMenuTest.java 2009-01-21
10:10:53 UTC (rev 12360)
@@ -21,64 +21,99 @@
package org.richfaces.testng;
import org.ajax4jsf.template.Template;
+import org.richfaces.AutoTester;
import org.richfaces.SeleniumTestBase;
import org.testng.annotations.Test;
public class DropDownMenuTest extends SeleniumTestBase {
+
+ static final String RESET_METHOD = "#{ddmenuBean.reset}";
+
+ static final String INIT_IMMEDIATE_METHOD =
"#{ddmenuBean.initImmediateTest}";
@Test
public void testDropDownMenuComponent(Template template) {
- renderPage(template);
+ renderPage(template, RESET_METHOD);
- String parentId = getParentId() + "_form:";
- String file = parentId + "file";
- String open = parentId + "open:anchor";
- String saveAs = parentId + "saveAs:anchor";
- String save = parentId + "save:anchor";
- String saveAll = parentId + "saveAll:anchor";
- String close = parentId + "close:anchor";
- String exit = parentId + "exit:anchor";
- String operation = parentId + "operation";
+ testDropDownComponent();
+ }
+
+ @Test
+ public void testWithExternalvalidationFailure(Template template) {
+ AutoTester autoTester = getAutoTester(this);
+ autoTester.renderPage(template, RESET_METHOD);
+
+ autoTester.testExtrenalValidationFailure();
+ }
+
+ @Test
+ public void testImmediate(Template template) {
+ renderPage(template, INIT_IMMEDIATE_METHOD);
+
+ testDropDownComponent();
+ }
- writeStatus("Check menu item in ajax mode");
+ public String getTestUrl() {
+ return "pages/dropDownMenu/dropDownMenuTest.xhtml";
+ }
+
+ @Override
+ public String getAutoTestUrl() {
+ return "pages/dropDownMenu/dropDownMenuAutoTest.xhtml";
+ }
+
+ @Override
+ public void sendAjax() {
+ String ajaxCommandId = getAutoTester(this).getClientId("new");
+ clickAjaxCommandAndWait(ajaxCommandId);
+ }
+
+
+ private void testDropDownComponent() {
+ String parentId = getParentId() + "_form:";
+ String file = parentId + "file";
+ String open = parentId + "open:anchor";
+ String saveAs = parentId + "saveAs:anchor";
+ String save = parentId + "save:anchor";
+ String saveAll = parentId + "saveAll:anchor";
+ String close = parentId + "close:anchor";
+ String exit = parentId + "exit:anchor";
+ String operation = parentId + "operation";
- selenium.mouseOver(file);
- selenium.mouseOver(saveAs);
- clickById(saveAll);
+ writeStatus("Check menu item in ajax mode");
- AssertTextEquals(operation, "Save All");
+ selenium.mouseOver(file);
+ selenium.mouseOver(saveAs);
+ clickAjaxCommandAndWait(saveAll);
- selenium.mouseOver(file);
- selenium.mouseOver(saveAs);
- clickById(save);
+ AssertTextEquals(operation, "Save All");
- AssertTextEquals(operation, "Save");
+ selenium.mouseOver(file);
+ selenium.mouseOver(saveAs);
+ clickAjaxCommandAndWait(save);
- writeStatus("Check the drop down menu closed");
+ AssertTextEquals(operation, "Save");
- AssertNotVisible(save);
- AssertNotVisible(saveAs);
+ writeStatus("Check the drop down menu closed");
- writeStatus("Check menu item in server mode");
+ AssertNotVisible(save);
+ AssertNotVisible(saveAs);
- selenium.mouseOver(file);
- clickCommandAndWait(close);
+ writeStatus("Check menu item in server mode");
- AssertTextEquals(operation, "Close");
+ selenium.mouseOver(file);
+ clickCommandAndWait(close);
- writeStatus("Check menu item in 'none' mode");
+ AssertTextEquals(operation, "Close");
- selenium.mouseOver(file);
- selenium.mouseOver(exit);
- clickById(exit);
+ writeStatus("Check menu item in 'none' mode");
- AssertTextEquals(operation, "Close");
- AssertNotVisible(exit);
+ selenium.mouseOver(file);
+ selenium.mouseOver(exit);
+ clickById(exit);
+ AssertTextEquals(operation, "Close");
+ AssertNotVisible(exit);
}
- public String getTestUrl() {
- return "pages/dropDownMenu/dropDownMenuTest.xhtml";
- }
-
}