Author: dsvyatobatsko
Date: 2008-11-21 14:55:04 -0500 (Fri, 21 Nov 2008)
New Revision: 11299
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
Log:
https://jira.jboss.org/jira/browse/RF-4825
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java 2008-11-21
18:33:23 UTC (rev 11298)
+++
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java 2008-11-21
19:55:04 UTC (rev 11299)
@@ -193,23 +193,51 @@
this.toggleOnClick = toggleOnClick;
}
+ private boolean ajaxSubmitSelection = false;
+
+ /**
+ * Gets value of ajaxSubmitSelection field.
+ * @return value of ajaxSubmitSelection field
+ */
+ public boolean isAjaxSubmitSelection() {
+ return ajaxSubmitSelection;
+ }
+
+ /**
+ * Set a new value for ajaxSubmitSelection field.
+ * @param ajaxSubmitSelection a new value for ajaxSubmitSelection field
+ */
+ public void setAjaxSubmitSelection(boolean ajaxSubmitSelection) {
+ this.ajaxSubmitSelection = ajaxSubmitSelection;
+ }
+
public void initToggleOnClickTestServerMode() {
setToggleOnClick(true);
setSwitchType("server");
+ setAjaxSubmitSelection(false);
}
public void initToggleOnClickTestAjaxMode() {
setToggleOnClick(true);
setSwitchType("ajax");
+ setAjaxSubmitSelection(false);
}
public void initToggleOnClickTestClientMode() {
setToggleOnClick(true);
setSwitchType("client");
+ setAjaxSubmitSelection(false);
}
public void initAjaxCoreTest() {
setSwitchType("ajax");
setToggleOnClick(false);
+ setAjaxSubmitSelection(false);
}
+
+ public void initAjaxSubmitSelectionTest() {
+ setSwitchType("client");
+ setAjaxSubmitSelection(true);
+ setToggleOnClick(false);
+ }
}
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
===================================================================
(Binary files differ)
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java 2008-11-21
18:33:23 UTC (rev 11298)
+++
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java 2008-11-21
19:55:04 UTC (rev 11299)
@@ -17,6 +17,7 @@
private final static String INIT_TOGGLE_ON_CLICK_AJAX_MODE =
"#{treeBean.initToggleOnClickTestAjaxMode}";
private final static String INIT_TOGGLE_ON_CLICK_CLIENT_MODE =
"#{treeBean.initToggleOnClickTestClientMode}";
private final static String INIT_AJAX_CORE_TEST =
"#{treeBean.initAjaxCoreTest}";
+ private final static String INIT_AJAX_SUBMIT_SELECTION =
"#{treeBean.initAjaxSubmitSelectionTest}";
static {
params.put("parameter1", "value1");
@@ -196,6 +197,36 @@
tester.checkUpdateModel(false);
}
+ //@Test
+ public void testAjaxSubmitSelection(Template template) {
+ AutoTester tester = getAutoTester(this);
+ tester.renderPage(template, INIT_AJAX_SUBMIT_SELECTION);
+ tester.reset();
+ tester.clickLoad();
+ writeStatus("test ajaxSubmitSelection attribute");
+ tester.startTracing();
+ writeStatus("the form has to be submitted and proper listeners are invoked
at every node click");
+ String compId = getAutoTester(this).getClientId(AutoTester.COMPONENT_ID);
+ clickAjaxCommandAndWait("//*[@id='"+ compId +
":childs']/table[1]/tbody/tr/td[3]");
+ tester.checkUpdateModel(true);
+ tester.startTracing();
+ selenium.click("//*[@id='"+ compId +
":childs']/table[1]/tbody/tr/td/div/a");
+ clickAjaxCommandAndWait("//*[@id='"+ compId +
":childs']/div/table[1]/tbody/tr/td[3]");
+ tester.checkUpdateModel(true);
+ tester.checkNodeExpandedListener(true);
+ tester.startTracing();
+ selenium.click("//*[@id='"+ compId +
":childs']/div/table[1]/tbody/tr/td/div/a");
+ clickAjaxCommandAndWait("//*[@id='"+ compId +
":childs']/div/div/table[1]/tbody/tr/td[3]");
+ tester.checkUpdateModel(true);
+ tester.checkNodeExpandedListener(true);
+ tester.startTracing();
+ writeStatus("Set external validation to fail and click on node. No listeners
must be invoked");
+ tester.setExtrenalValidationFailed();
+ clickAjaxCommandAndWait("//*[@id='"+ compId +
":childs']/div/div/table[2]/tbody/tr/td[3]");
+ tester.checkUpdateModel(false);
+ tester.checkNodeExpandedListener(false);
+ }
+
@Override
public void sendAjax() {
AutoTester tester = getAutoTester(this);