[richfaces-svn-commits] JBoss Rich Faces SVN: r12175 - in trunk/test-applications/seleniumTest/richfaces/src: main/java/org/ajax4jsf/listener and 3 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Fri Jan 9 08:55:51 EST 2009
Author: dsvyatobatsko
Date: 2009-01-09 08:55:51 -0500 (Fri, 09 Jan 2009)
New Revision: 12175
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeExpandedListener.java
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeSelectedListener.java
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/autotest/bean/AutoTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/AutoTester.java
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
Log:
https://jira.jboss.org/jira/browse/RF-5572
https://jira.jboss.org/jira/browse/RF-5574
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/autotest/bean/AutoTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/autotest/bean/AutoTestBean.java 2009-01-09 13:46:31 UTC (rev 12174)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/autotest/bean/AutoTestBean.java 2009-01-09 13:55:51 UTC (rev 12175)
@@ -76,6 +76,8 @@
public static final String VALIDATOR_MESSAGE = "Validator message";
+ public static final String AUTOTEST_BEAN_NAME = "autoTestBean";
+
// private String input = INPUT_TEXT;
private String reRender = STATUS_ID;
@@ -169,7 +171,15 @@
public void processExpansion(NodeExpandedEvent nodeExpandedEvent) {
setStatus(getStatus() + NODE_EXPANDED_LISTENER_STATUS);
}
-
+
+ /**
+ * Puts a message into the status that can be checked by <code>AutoTester#checkMessage</code> method hereafter
+ * @param msg message
+ */
+ public void addMessage(String msg) {
+ setStatus(getStatus() + msg);
+ }
+
public void validate(FacesContext context, UIComponent component, Object o) {
if (VALIDATOR_ID.equals(this.validatorId)) {
AutoTestValidator validator = new AutoTestValidator();
Added: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeExpandedListener.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeExpandedListener.java (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeExpandedListener.java 2009-01-09 13:55:51 UTC (rev 12175)
@@ -0,0 +1,24 @@
+package org.ajax4jsf.listener;
+
+import javax.faces.event.AbortProcessingException;
+
+import org.ajax4jsf.autotest.bean.AutoTestBean;
+import org.ajax4jsf.util.FacesUtils;
+import org.richfaces.event.NodeExpandedEvent;
+import org.richfaces.event.NodeExpandedListener;
+
+public class TreeNodeExpandedListener implements NodeExpandedListener {
+
+ public static final String NE_LISTENER = "NELISTENER";
+
+ /**
+ * @see NodeExpandedListener#processExpansion(NodeExpandedEvent)
+ */
+ public void processExpansion(NodeExpandedEvent nodeExpandedEvent) throws AbortProcessingException {
+ AutoTestBean bean = (AutoTestBean) FacesUtils.getFacesBean(AutoTestBean.AUTOTEST_BEAN_NAME);
+ if (bean != null) {
+ bean.addMessage(NE_LISTENER);
+ }
+ }
+
+}
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeExpandedListener.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeSelectedListener.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeSelectedListener.java (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeSelectedListener.java 2009-01-09 13:55:51 UTC (rev 12175)
@@ -0,0 +1,24 @@
+package org.ajax4jsf.listener;
+
+import javax.faces.event.AbortProcessingException;
+
+import org.ajax4jsf.autotest.bean.AutoTestBean;
+import org.ajax4jsf.util.FacesUtils;
+import org.richfaces.event.NodeSelectedEvent;
+import org.richfaces.event.NodeSelectedListener;
+
+public class TreeNodeSelectedListener implements NodeSelectedListener {
+
+ public static final String NS_LISTENER = "NSLISTENER";
+
+ /**
+ * @see NodeSelectedListener#processSelection(NodeSelectedEvent)
+ */
+ public void processSelection(NodeSelectedEvent nodeSelectedEvent) throws AbortProcessingException {
+ AutoTestBean bean = (AutoTestBean) FacesUtils.getFacesBean(AutoTestBean.AUTOTEST_BEAN_NAME);
+ if (bean != null) {
+ bean.addMessage(NS_LISTENER);
+ }
+ }
+
+}
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/listener/TreeNodeSelectedListener.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
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/AutoTester.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/AutoTester.java 2009-01-09 13:46:31 UTC (rev 12174)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/AutoTester.java 2009-01-09 13:55:51 UTC (rev 12175)
@@ -574,6 +574,16 @@
}
}
+ public boolean checkMessage(String msg, boolean contain) {
+ String status = getStatus();
+ if (contain && status != null && status.indexOf(msg) == -1) {
+ return false;
+ } else if (!contain && status != null && status.indexOf(msg) != -1) {
+ return false;
+ }
+ return true;
+ }
+
private String getStatus() {
return base.getTextById(base.getParentId() + AUTOTEST_FORM_ID + STATUS_ID);
}
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 2009-01-09 13:46:31 UTC (rev 12174)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java 2009-01-09 13:55:51 UTC (rev 12175)
@@ -23,6 +23,8 @@
import java.util.HashMap;
import java.util.Map;
+import org.ajax4jsf.listener.TreeNodeExpandedListener;
+import org.ajax4jsf.listener.TreeNodeSelectedListener;
import org.ajax4jsf.template.Template;
import org.richfaces.AutoTester;
import org.richfaces.SeleniumTestBase;
@@ -631,6 +633,30 @@
//d40
}
+ @Test
+ public void testNodeSelectedAndNodeExpandedListeners(Template template) {
+ AutoTester tester = getAutoTester(this);
+ tester.renderPage(template, INIT_AJAX_CORE_TEST);
+ tester.reset();
+ tester.clickLoad();
+ writeStatus("Check NodeExpandedListener and NodeSelectedListener");
+
+ String compId = getAutoTester(this).getClientId(AutoTester.COMPONENT_ID);
+ String firstNodeHandlerXpath = "//*[@id='"+ compId + ":childs']/table[1]/tbody/tr/td/div/a";
+ String secondNodeXpath = "//*[@id='"+ compId + ":childs']/div/table[1]/tbody/tr/td[3]";
+
+ writeStatus("Expand the first node. NodeExpandedListener must be triggered. NodeSelectedListener should remain untouched. Check it");
+ clickAjaxCommandAndWait(firstNodeHandlerXpath);
+ Assert.assertTrue(tester.checkMessage(TreeNodeExpandedListener.NE_LISTENER, true), "NodeExpandedListener has to be triggered");
+ Assert.assertTrue(tester.checkMessage(TreeNodeSelectedListener.NS_LISTENER, false), "NodeSelectedListener has not to be triggered");
+
+ writeStatus("Select the second node. Now vice versa: NodeSelectedListener must be triggered. NodeExpandedListener should remain untouched. Check it");
+ tester.startTracing();
+ clickTreeNodeAndWait(secondNodeXpath);
+ Assert.assertTrue(tester.checkMessage(TreeNodeExpandedListener.NE_LISTENER, false), "NodeExpandedListener has not to be triggered");
+ Assert.assertTrue(tester.checkMessage(TreeNodeSelectedListener.NS_LISTENER, true), "NodeSelectedListener has to be triggered");
+ }
+
@Override
public void sendAjax() {
AutoTester tester = getAutoTester(this);
More information about the richfaces-svn-commits
mailing list