[richfaces-svn-commits] JBoss Rich Faces SVN: r12464 - in trunk/test-applications/seleniumTest/richfaces/src: main/webapp/pages/dataGrid and 1 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Wed Jan 28 09:14:45 EST 2009
Author: konstantin.mishin
Date: 2009-01-28 09:14:45 -0500 (Wed, 28 Jan 2009)
New Revision: 12464
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DataGridBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dataGrid/dataGrid.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DataGridTest.java
Log:
RF-5678
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DataGridBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DataGridBean.java 2009-01-28 13:43:19 UTC (rev 12463)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/DataGridBean.java 2009-01-28 14:14:45 UTC (rev 12464)
@@ -1,7 +1,9 @@
package org.ajax4jsf.bean;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
@@ -52,6 +54,7 @@
private List<Element> model;
private int elements;
private String trace;
+ private Set<Integer> ajaxKeys;
public DataGridBean() {
init();
@@ -64,12 +67,24 @@
}
elements = 0;
trace = "";
+ ajaxKeys = new HashSet<Integer>(10);
+ for (int i = 0; i < 10; i++) {
+ if (i != 2 && i != 6) {
+ ajaxKeys.add(i);
+ }
+ }
}
public void submit(ActionEvent event) {
trace = event.getComponent().getClientId(FacesContext.getCurrentInstance());
}
+ public void reRender(ActionEvent event) {
+ for (Element element : model) {
+ element.setCell2("XXX");
+ }
+ }
+
public void setModel(List<Element> model) {
this.model = model;
}
@@ -100,4 +115,12 @@
throw new ValidatorException(new FacesMessage("validation failure"));
}
}
+
+ public void setAjaxKeys(Set<Integer> ajaxKeys) {
+ this.ajaxKeys = ajaxKeys;
+ }
+
+ public Set<Integer> getAjaxKeys() {
+ return ajaxKeys;
+ }
}
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dataGrid/dataGrid.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dataGrid/dataGrid.xhtml 2009-01-28 13:43:19 UTC (rev 12463)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/dataGrid/dataGrid.xhtml 2009-01-28 14:14:45 UTC (rev 12464)
@@ -23,16 +23,17 @@
</h:selectBooleanCheckbox-->
</h:form>
<h:form id="mainForm">
- <rich:dataGrid id="dataGrid" value="#{dataGrid.model}" var="element" elements="#{dataGrid.elements}">
+ <rich:dataGrid id="dataGrid" value="#{dataGrid.model}" var="element" elements="#{dataGrid.elements}" ajaxKeys="#{dataGrid.ajaxKeys}">
<h:panelGroup>
<h:outputText value="#{element.cell1}"></h:outputText>
- <h:inputText value="#{element.cell2}" validator="#{dataGrid.validate}"></h:inputText>
+ <h:inputText id="inputText" value="#{element.cell2}" validator="#{dataGrid.validate}"></h:inputText>
<h:outputText value="#{element.cell3}"></h:outputText>
<h:commandButton id="submit" value="submit" actionListener="#{dataGrid.submit}"></h:commandButton>
<a4j:commandButton id="ajaxSubmit" value="ajaxSubmit" actionListener="#{dataGrid.submit}"></a4j:commandButton>
<a4j:commandButton id="ajaxSingleSubmit" value="ajaxSingleSubmit" actionListener="#{dataGrid.submit}" ajaxSingle="true"></a4j:commandButton>
</h:panelGroup>
</rich:dataGrid>
+ <a4j:commandButton id="reRender" value="reRender" reRender="inputText" actionListener="#{dataGrid.reRender}"></a4j:commandButton>
</h:form>
<a4j:outputPanel ajaxRendered="true">
<h:outputText id="outputText" value="#{dataGrid.trace}"></h:outputText>
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DataGridTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DataGridTest.java 2009-01-28 13:43:19 UTC (rev 12463)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/DataGridTest.java 2009-01-28 14:14:45 UTC (rev 12464)
@@ -13,6 +13,8 @@
private String dataGrid;
+ private String reRender;
+
private String outputText;
private String dataTable;
@@ -23,6 +25,7 @@
elements = attrForm + ":elements";
String mainForm = getParentId() + "mainForm";
dataGrid = mainForm + ":dataGrid";
+ reRender = mainForm + ":reRender";
outputText = getParentId() + "outputText";
dataTable = getParentId() + "dataTable";
}
@@ -71,6 +74,17 @@
chekStructure(3, 6);
}
+ /**
+ * rows defined by ajaxKeys attribute are re-rendered correctly
+ */
+ @Test
+ public void testAjaxKeys(Template template) {
+ init(template);
+ chekStructure();
+ clickAjaxCommandAndWait(reRender);
+ chekStructure(3, 7);
+ }
+
private void chekStructure(int ... notEqualRows) {
String dataTableRowLocator = "id('"+ dataTable + "')/tbody/tr";
int count = selenium.getXpathCount(dataTableRowLocator).intValue();
More information about the richfaces-svn-commits
mailing list