[richfaces-svn-commits] JBoss Rich Faces SVN: r439 - trunk/richfaces/datascroller/src/test/java/org/richfaces/component.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Wed Apr 18 10:25:40 EDT 2007
Author: d.bulahov
Date: 2007-04-18 10:25:39 -0400 (Wed, 18 Apr 2007)
New Revision: 439
Modified:
trunk/richfaces/datascroller/src/test/java/org/richfaces/component/DatascrollerComponentTest.java
Log:
Unit tests development
Modified: trunk/richfaces/datascroller/src/test/java/org/richfaces/component/DatascrollerComponentTest.java
===================================================================
--- trunk/richfaces/datascroller/src/test/java/org/richfaces/component/DatascrollerComponentTest.java 2007-04-18 14:24:51 UTC (rev 438)
+++ trunk/richfaces/datascroller/src/test/java/org/richfaces/component/DatascrollerComponentTest.java 2007-04-18 14:25:39 UTC (rev 439)
@@ -21,17 +21,28 @@
package org.richfaces.component;
+import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlScript;
import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
import org.apache.commons.lang.StringUtils;
+import org.richfaces.event.DataScrollerAdapter;
+import org.richfaces.event.DataScrollerEvent;
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UICommand;
import javax.faces.component.UIComponent;
import javax.faces.component.UIData;
import javax.faces.component.UIOutput;
+import javax.faces.component.html.HtmlCommandLink;
import javax.faces.component.html.HtmlDataTable;
import javax.faces.component.html.HtmlForm;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.MethodBinding;
+import javax.faces.el.MethodNotFoundException;
+
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
@@ -58,6 +69,7 @@
private UIOutput fastforward;
private UIOutput next;
private UIOutput last;
+ private UICommand command = null;
/**
* Create the test case
@@ -75,7 +87,7 @@
super.setUp();
form = new HtmlForm();
- form.setId("form");
+ form.setId("form");
facesContext.getViewRoot().getChildren().add(form);
ArrayList dat = new ArrayList();
for (int i=0;i<20;i++){
@@ -84,7 +96,7 @@
data = (UIData) application.createComponent(HtmlDataTable.COMPONENT_TYPE);
data.setValue(dat);
data.setId("data");
- data.setRows(5);
+ data.setRows(5);
form.getChildren().add(data);
scroller = (UIDatascroller) application.createComponent("org.richfaces.Datascroller");
@@ -118,6 +130,11 @@
scroller.getFacets().put(last.getId(), last);
form.getChildren().add(scroller);
+
+ command = new HtmlCommandLink();
+ command.setId("command");
+ form.getChildren().add(command);
+
}
/* (non-Javadoc)
@@ -206,6 +223,16 @@
}
}
+
+ public void testNotFor() throws Exception {
+ scroller.setFor(null);
+ try {
+ HtmlPage page = renderView();
+ assertTrue(false);
+ } catch(Exception ex) {
+ }
+
+ }
/**
@@ -378,4 +405,28 @@
data.setRows(0);
}
+
+ public void testListener() throws Exception{
+ HtmlPage renderedView = renderView();
+
+ HtmlAnchor htmlLink = (HtmlAnchor) renderedView.getHtmlElementById(command.getClientId(facesContext));
+ htmlLink.click();
+
+ MethodBinding binding = new MethodBinding(){
+ public Object invoke(FacesContext context, Object[] params) throws EvaluationException, MethodNotFoundException {
+ facesContext.addMessage(scroller.getClientId(facesContext), new FacesMessage("Method invoked!"));
+ return "invoked";
+ }
+ public Class getType(FacesContext context) throws MethodNotFoundException {
+ return String.class;
+ }
+ };
+
+ DataScrollerEvent event = new DataScrollerEvent( ((UIComponent) scroller), "1", "2" );
+ new DataScrollerAdapter(binding).processScroller(event);
+
+ assertTrue(facesContext.getMessages().hasNext());
+ }
+
+
}
More information about the richfaces-svn-commits
mailing list