[richfaces-svn-commits] JBoss Rich Faces SVN: r344 - trunk/richfaces/inputnumber-slider/src/test/java/org/richfaces/component.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Tue Apr 10 11:25:52 EDT 2007


Author: pkotikov
Date: 2007-04-10 11:25:52 -0400 (Tue, 10 Apr 2007)
New Revision: 344

Modified:
   trunk/richfaces/inputnumber-slider/src/test/java/org/richfaces/component/InputNumberSliderComponentTest.java
Log:
Update of tests.

Modified: trunk/richfaces/inputnumber-slider/src/test/java/org/richfaces/component/InputNumberSliderComponentTest.java
===================================================================
--- trunk/richfaces/inputnumber-slider/src/test/java/org/richfaces/component/InputNumberSliderComponentTest.java	2007-04-10 15:06:24 UTC (rev 343)
+++ trunk/richfaces/inputnumber-slider/src/test/java/org/richfaces/component/InputNumberSliderComponentTest.java	2007-04-10 15:25:52 UTC (rev 344)
@@ -32,6 +32,10 @@
 import javax.faces.component.UIViewRoot;
 import javax.faces.component.html.HtmlCommandLink;
 import javax.faces.component.html.HtmlForm;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.PropertyNotFoundException;
+import javax.faces.el.ValueBinding;
 
 import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
 import org.apache.commons.lang.StringUtils;
@@ -113,12 +117,8 @@
 	
 	assertNotNull(htmlSliderInput);
 	
-	if (slider.getAttributes().get("showInput").equals(Boolean.TRUE)) {
-	    assertTrue(htmlSliderInput.getClassAttribute().contains("dr-insldr-field rich-inslider-field"));
-	    assertTrue(htmlSliderInput.getTypeAttribute().equals("text"));
-	} else {
-	    assertTrue(htmlSliderInput.getTypeAttribute().equals("hidden"));
-	}
+	assertTrue(htmlSliderInput.getClassAttribute().contains("dr-insldr-field rich-inslider-field"));
+	assertTrue(htmlSliderInput.getTypeAttribute().equals("text"));
 	
 	DomNode numContainer = htmlSliderInput.getParentNode().getPreviousSibling();
 	assertTrue(((HtmlElement)numContainer).getAttributeValue("class").contains("dr-insldr-right-num rich-inslider-right-num"));
@@ -132,9 +132,15 @@
 	
 	HtmlElement track = (HtmlElement)tip.getParentNode().getNextSibling();
 	assertTrue(track.getAttributeValue("class").contains("dr-insldr-track rich-inslider-track"));
-	
     }
     
+    public void testHiddenInput() throws Exception {
+    	slider.getAttributes().put("showInput",Boolean.FALSE);
+	HtmlPage renderedView = renderView();
+	HtmlInput htmlSliderInput = (HtmlInput) renderedView.getHtmlElementById(slider.getClientId(facesContext) + "Input");
+	assertTrue(htmlSliderInput.getTypeAttribute().equals("hidden"));
+    }
+    
     public void testRenderStyle() throws Exception {
         HtmlPage page = renderView();
         assertNotNull(page);
@@ -172,10 +178,10 @@
 	//tests if component handles value bindings correctly
     	HtmlPage renderedView = renderView();
     	
-    	String maxValue = ((UIInputNumberSlider)slider).getMaxValue();
+    	String value = "66";
     	
-	HtmlInput htmlSliderInput = (HtmlInput) renderedView.getHtmlElementById(slider.getClientId(facesContext) + "Input");
-	htmlSliderInput.setValueAttribute(maxValue);
+    	HtmlInput htmlSliderInput = (HtmlInput) renderedView.getHtmlElementById(slider.getClientId(facesContext) + "Input");
+	htmlSliderInput.setValueAttribute(value);
 	
     	HtmlAnchor htmlLink = (HtmlAnchor) renderedView.getHtmlElementById(command.getClientId(facesContext));
     	htmlLink.click();
@@ -195,29 +201,73 @@
     	
     	renderedView = renderView();
     	htmlSliderInput = (HtmlInput) renderedView.getHtmlElementById(slider.getClientId(facesContext)+"Input");
-	assertTrue( maxValue.equals(((UIInputNumberSlider)slider).getValue()) );
+	assertTrue( value.equals(((UIInputNumberSlider)slider).getValue()) );
     }
     
     public void testDecode() throws Exception{
 	//Tests if component accepts request parameters and stores them in submittedValue(). 
 	//If component is immediate, validation (possibly with conversion) should occur on that phase.
+	final SliderBean bean = new SliderBean();
+	((UIInputNumberSlider)slider).setValueBinding("value", 
+		new ValueBinding() {
+	    public Class getType(FacesContext context) throws EvaluationException, PropertyNotFoundException {
+	        return String.class;
+	    }
+	    public Object getValue(FacesContext context) throws EvaluationException, PropertyNotFoundException {
+		return bean.getValue();
+	    }
+	    public boolean isReadOnly(FacesContext context) throws EvaluationException, PropertyNotFoundException {
+	        return false;
+	    }
+	    public void setValue(FacesContext context, Object value) throws EvaluationException, PropertyNotFoundException {
+	       bean.setValue((String)value);
+	    }
+	});
 	HtmlPage renderedView = renderView();
     	HtmlAnchor htmlLink = (HtmlAnchor) renderedView.getHtmlElementById(command.getClientId(facesContext));
     	htmlLink.click();
-    	externalContext.addRequestParameterMap(slider.getClientId(facesContext),((UIInputNumberSlider)slider).getMaxValue());
-    	UIViewRoot root = facesContext.getViewRoot();
-    	root.processDecodes(facesContext);    	
-	UIInputNumberSlider uiSlider = (UIInputNumberSlider) slider;
-	if (uiSlider.isImmediate()){
-	    uiSlider.validate(facesContext);
-	    assertTrue(uiSlider.isValid());
-	}
-	assertTrue(externalContext.getRequestParameterMap().get(slider.getClientId(facesContext)).equals(uiSlider.getMaxValue()));
+    	externalContext.addRequestParameterMap(slider.getClientId(facesContext),"66");
+    	slider.processDecodes(facesContext);
+	assertTrue(bean.getValue().equals("66"));
 	
+	((UIInputNumberSlider)slider).setImmediate(true);
+	renderedView = renderView();	
+	htmlLink = (HtmlAnchor) renderedView.getHtmlElementById(command.getClientId(facesContext));
+    	htmlLink.click();
+    	externalContext.addRequestParameterMap(slider.getClientId(facesContext),"wrong value");
+    	slider.processDecodes(facesContext);
+    	assertTrue(facesContext.getMessages().hasNext());
     }
  
-    public void testValidate(){
-	// tests if component is able to handle submittedValue() correctly (convert & validate)
+    public void testValidate() throws Exception{
+	HtmlPage renderedView = renderView();
+
+	HtmlAnchor htmlLink = (HtmlAnchor) renderedView.getHtmlElementById(command.getClientId(facesContext));
+    	htmlLink.click();
+    	externalContext.addRequestParameterMap(slider.getClientId(facesContext),"wrong value");
+    	slider.processDecodes(facesContext);
+    	slider.processValidators(facesContext);
+    	
+    	assertTrue(facesContext.getMessages().hasNext());
+    	
     }
     
-}
+    private class SliderBean  {
+	
+	private String value;
+	
+	SliderBean (){
+	    this.value = "66";
+	}
+
+	public String getValue() {
+	    return value;
+	}
+
+	public void setValue(String value) {
+	    this.value = value;
+	}
+	    
+    }
+    
+}
\ No newline at end of file




More information about the richfaces-svn-commits mailing list