JBoss Rich Faces SVN: r9553 - trunk/ui/listShuttle/src/test/java/org/richfaces/renderkit.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2008-07-12 07:17:36 -0400 (Sat, 12 Jul 2008)
New Revision: 9553
Modified:
trunk/ui/listShuttle/src/test/java/org/richfaces/renderkit/ListShuttleRenderingTest.java
Log:
ListShuttleRenderingTest fixed
Modified: trunk/ui/listShuttle/src/test/java/org/richfaces/renderkit/ListShuttleRenderingTest.java
===================================================================
--- trunk/ui/listShuttle/src/test/java/org/richfaces/renderkit/ListShuttleRenderingTest.java 2008-07-12 09:50:34 UTC (rev 9552)
+++ trunk/ui/listShuttle/src/test/java/org/richfaces/renderkit/ListShuttleRenderingTest.java 2008-07-12 11:17:36 UTC (rev 9553)
@@ -34,9 +34,6 @@
import javax.servlet.http.HttpServletResponse;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
-import org.ajax4jsf.resource.InternetResource;
-import org.ajax4jsf.resource.InternetResourceBuilder;
-import org.ajax4jsf.resource.ResourceBuilderImpl;
import org.ajax4jsf.resource.image.ImageInfo;
import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
import org.apache.commons.lang.StringUtils;
@@ -64,6 +61,7 @@
static {
javaScripts.add("org.ajax4jsf.javascript.PrototypeScript");
+ javaScripts.add("scripts/utils.js");
javaScripts.add("scripts/ShuttleUtils.js");
javaScripts.add("scripts/SelectItem.js");
javaScripts.add("scripts/LayoutManager.js");
16 years, 2 months
JBoss Rich Faces SVN: r9552 - trunk/ui/orderingList/src/test/java/org/richfaces/renderkit.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2008-07-12 05:50:34 -0400 (Sat, 12 Jul 2008)
New Revision: 9552
Modified:
trunk/ui/orderingList/src/test/java/org/richfaces/renderkit/OrderingListRenderingTest.java
Log:
OrderingListRenderingTest fixed
Modified: trunk/ui/orderingList/src/test/java/org/richfaces/renderkit/OrderingListRenderingTest.java
===================================================================
--- trunk/ui/orderingList/src/test/java/org/richfaces/renderkit/OrderingListRenderingTest.java 2008-07-12 00:42:05 UTC (rev 9551)
+++ trunk/ui/orderingList/src/test/java/org/richfaces/renderkit/OrderingListRenderingTest.java 2008-07-12 09:50:34 UTC (rev 9552)
@@ -34,9 +34,6 @@
import javax.servlet.http.HttpServletResponse;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
-import org.ajax4jsf.resource.InternetResource;
-import org.ajax4jsf.resource.InternetResourceBuilder;
-import org.ajax4jsf.resource.ResourceBuilderImpl;
import org.ajax4jsf.resource.image.ImageInfo;
import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
import org.apache.commons.lang.StringUtils;
@@ -58,6 +55,7 @@
static {
javaScripts.add("org.ajax4jsf.javascript.PrototypeScript");
+ javaScripts.add("scripts/utils.js");
javaScripts.add("scripts/ShuttleUtils.js");
javaScripts.add("scripts/SelectItem.js");
javaScripts.add("scripts/LayoutManager.js");
16 years, 2 months
JBoss Rich Faces SVN: r9551 - in trunk/sandbox: samples/beanValidatorSample/src/main/webapp/pages and 3 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2008-07-11 20:42:05 -0400 (Fri, 11 Jul 2008)
New Revision: 9551
Added:
trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/component/UIGraphValidator.java
Modified:
trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/DataBean.java
trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/MinMaxBean.java
trunk/sandbox/samples/beanValidatorSample/src/main/webapp/pages/index.jsp
trunk/sandbox/ui/beanValidator/src/main/config/component/beanValidator.xml
trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/validator/BeanValidator.java
Log:
graph validator component.
Modified: trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/DataBean.java
===================================================================
--- trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/DataBean.java 2008-07-11 17:00:31 UTC (rev 9550)
+++ trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/DataBean.java 2008-07-12 00:42:05 UTC (rev 9551)
@@ -9,6 +9,8 @@
import java.util.List;
import java.util.ListIterator;
+import org.hibernate.validator.Max;
+
/**
* @author asmirnov
*
@@ -27,6 +29,14 @@
backend.add(new MinMaxBean());
}
+ @Max(value=20,message="Total value should be less then 20")
+ public int getTotal(){
+ int total = 0;
+ for (Validable bean : backend) {
+ total += bean.getIntValue();
+ }
+ return total;
+ }
/**
* @param o
* @return
Modified: trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/MinMaxBean.java
===================================================================
--- trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/MinMaxBean.java 2008-07-11 17:00:31 UTC (rev 9550)
+++ trunk/sandbox/samples/beanValidatorSample/src/main/java/org/richfaces/MinMaxBean.java 2008-07-12 00:42:05 UTC (rev 9551)
@@ -55,7 +55,7 @@
public String getIntDescription() {
// TODO Auto-generated method stub
- return "Integer Value, fron 2 to 10";
+ return "Integer Value, valid values from 2 to 10";
}
}
Modified: trunk/sandbox/samples/beanValidatorSample/src/main/webapp/pages/index.jsp
===================================================================
--- trunk/sandbox/samples/beanValidatorSample/src/main/webapp/pages/index.jsp 2008-07-11 17:00:31 UTC (rev 9550)
+++ trunk/sandbox/samples/beanValidatorSample/src/main/webapp/pages/index.jsp 2008-07-12 00:42:05 UTC (rev 9551)
@@ -16,18 +16,19 @@
<h:form id="form">
<rich:panel>
<f:facet name="header">
- <h2>Single input field with label and message</h2>
+ <h2>Single input field with label and message. Validated by AJAX on every char.</h2>
</f:facet>
<h:outputLabel for="ltext" value="#{lengthBean.textDescription}" />
<h:inputText id="ltext" value="#{lengthBean.text}">
- <v:ajaxValidator event="onblur" />
+ <v:ajaxValidator event="onkeyup" />
</h:inputText>
<rich:message for="ltext" showDetail="true" showSummary="true" />
</rich:panel>
- <h2>Input fields with label and message in the JSF dataTable</h2>
+ <h2>Input fields with label and message in the JSF dataTable. Each field validated by AJAX on "onblur" event</h2>
+ <v:graphValidator value="#{data}" >
<h:dataTable value="#{data}" var="bean" id="table">
<f:facet name="header">
- <h:outputText value="Validate values in the data table" />
+ <h:outputText value="Validate values in the data table. Total sum for an all integer values validated for a value less then 20" />
</f:facet>
<h:column>
@@ -51,9 +52,10 @@
<rich:message for="intValue" showDetail="true" showSummary="true" />
</h:column>
</h:dataTable>
+ </v:graphValidator>
<h:commandButton value="Non-AJAX Post submit"></h:commandButton>
</h:form>
- <rich:messages />
+ <rich:messages />
</f:view>
</body>
</html>
Modified: trunk/sandbox/ui/beanValidator/src/main/config/component/beanValidator.xml
===================================================================
--- trunk/sandbox/ui/beanValidator/src/main/config/component/beanValidator.xml 2008-07-11 17:00:31 UTC (rev 9550)
+++ trunk/sandbox/ui/beanValidator/src/main/config/component/beanValidator.xml 2008-07-12 00:42:05 UTC (rev 9551)
@@ -58,6 +58,30 @@
<defaultvalue>true</defaultvalue>
</property>
</component>
+ <component>
+ <name>org.richfaces.GraphValidator</name>
+ <family>org.richfaces.GraphValidator</family>
+ <classname>
+ org.richfaces.component.html.HtmlGraphValidator
+ </classname>
+ <superclass>org.richfaces.component.UIGraphValidator</superclass>
+ <description><![CDATA[]]></description>
+ <tag>
+ <name>graphValidator</name>
+ <classname>org.richfaces.taglib.html.jsp.GraphValidator</classname>
+ <superclass>
+ org.ajax4jsf.webapp.taglib.UIComponentTagBase
+ </superclass>
+ <!-- <superclass>
+ org.ajax4jsf.webapp.taglib.UIComponentTagBase
+ </superclass>
+ -->
+ <displayname>Bean validation @ and @validation support</displayname>
+ <icon>icon</icon>
+ <test />
+ </tag>
+ &ui_component_attributes;
+ </component>
<validator generate="false">
<id>org.richfaces.BeanValidator</id>
<classname>
Added: trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/component/UIGraphValidator.java
===================================================================
--- trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/component/UIGraphValidator.java (rev 0)
+++ trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/component/UIGraphValidator.java 2008-07-12 00:42:05 UTC (rev 9551)
@@ -0,0 +1,150 @@
+/**
+ *
+ */
+
+package org.richfaces.component;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import javax.el.ValueExpression;
+import javax.faces.FacesException;
+import javax.faces.application.FacesMessage;
+import javax.faces.component.EditableValueHolder;
+import javax.faces.component.UIComponent;
+import javax.faces.component.UIComponentBase;
+import javax.faces.component.UIInput;
+import javax.faces.component.UIMessage;
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+import javax.faces.event.AbortProcessingException;
+import javax.faces.event.FacesEvent;
+import javax.faces.event.PhaseId;
+import javax.faces.validator.Validator;
+
+import org.ajax4jsf.component.AjaxComponent;
+import org.ajax4jsf.component.AjaxContainer;
+import org.ajax4jsf.component.AjaxSupport;
+import org.ajax4jsf.component.EventValueExpression;
+import org.ajax4jsf.context.AjaxContext;
+import org.ajax4jsf.event.AjaxEvent;
+import org.ajax4jsf.event.AjaxListener;
+import org.ajax4jsf.renderkit.AjaxContainerRenderer;
+import org.ajax4jsf.renderkit.AjaxRendererUtils;
+import org.richfaces.event.ValidationEvent;
+import org.richfaces.validator.BeanValidator;
+import org.richfaces.validator.FacesBeanValidator;
+
+import com.sun.facelets.FaceletException;
+
+/**
+ * JSF component class
+ *
+ */
+public abstract class UIGraphValidator extends UIComponentBase {
+
+ public static final String COMPONENT_TYPE = "org.richfaces.GraphValidator";
+
+ public static final String COMPONENT_FAMILY = "org.richfaces.GraphValidator";
+
+ /**
+ * Get object for validation
+ *
+ * @return
+ */
+ public abstract Object getValue();
+
+ /**
+ * Set object for validation
+ *
+ * @param newvalue
+ */
+ public abstract void setValue(Object newvalue);
+
+ /**
+ * Get set of profiles for validation
+ *
+ * @return
+ */
+ public abstract Set<String> getProfile();
+
+ /**
+ * Set set of profiles for validation
+ *
+ * @param newvalue
+ */
+ public abstract void setProfile(Set<String> newvalue);
+
+ @Override
+ public void processUpdates(FacesContext context) {
+ super.processUpdates(context);
+ Object value = getValue();
+ if (null != value) {
+ BeanValidator beanValidator = BeanValidator.getInstance(context);
+ String[] messages = beanValidator.validateGraph(context, value,getProfile());
+ if (null != messages) {
+ context.renderResponse();
+ // send all validation messages.
+ for (String msg : messages) {
+ // TODO - create Summary message ?
+ context.addMessage(null, new FacesMessage(
+ FacesMessage.SEVERITY_ERROR, msg, msg));
+ }
+ }
+
+ }
+ }
+
+ @Override
+ public void encodeBegin(FacesContext context) throws IOException {
+ super.encodeBegin(context);
+ Validator validator = context.getApplication().createValidator(FacesBeanValidator.BEAN_VALIDATOR_TYPE);
+ setupValidators(this,validator);
+ }
+
+ @Override
+ public void encodeChildren(FacesContext context) throws IOException {
+ if(isRendered()){
+ for (UIComponent child : getChildren()) {
+ if(child.isRendered()){
+ child.encodeAll(context);
+ }
+ }
+ }
+ }
+
+ private void setupValidators(UIComponent component,
+ Validator validator) {
+ Iterator<UIComponent> facetsAndChildren = component.getFacetsAndChildren();
+ while (facetsAndChildren.hasNext()) {
+ UIComponent child = facetsAndChildren.next();
+ if (child instanceof EditableValueHolder) {
+ EditableValueHolder input = (EditableValueHolder) child;
+ setupValidator(input,validator);
+ }
+ setupValidators(child, validator);
+ }
+ }
+
+ /**
+ * @param input
+ */
+ private void setupValidator(EditableValueHolder input,Validator validator) {
+ Validator[] validators = input.getValidators();
+ for (int i = 0; i < validators.length; i++) {
+ if(validators[i] instanceof FacesBeanValidator){
+ return;
+ }
+ }
+ input.addValidator(validator);
+ }
+
+ @Override
+ public boolean getRendersChildren() {
+ return true;
+ }
+
+}
Property changes on: trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/component/UIGraphValidator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/validator/BeanValidator.java
===================================================================
--- trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/validator/BeanValidator.java 2008-07-11 17:00:31 UTC (rev 9550)
+++ trunk/sandbox/ui/beanValidator/src/main/java/org/richfaces/validator/BeanValidator.java 2008-07-12 00:42:05 UTC (rev 9551)
@@ -8,6 +8,7 @@
import java.util.Locale;
import java.util.Map;
import java.util.ResourceBundle;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import javax.el.ELContext;
@@ -109,13 +110,8 @@
elContext.getELResolver());
ELContextWrapper wrappedElContext = new ELContextWrapper(elContext,
validationResolver);
- // TODO - check null viewRoot and null Locale.
- if (null == context.getViewRoot()) {
- throw new FacesException(VIEW_ROOT_IS_NOT_INITIALIZED);
- } else if (null == context.getViewRoot().getLocale()) {
- throw new FacesException(LOCALE_IS_NOT_SET);
- }
- wrappedElContext.setLocale(context.getViewRoot().getLocale());
+ Locale locale = calculateLocale(context);
+ wrappedElContext.setLocale(locale);
// TODO - handle ELExceptions ?
try {
target.setValue(wrappedElContext, value);
@@ -129,6 +125,16 @@
}
}
+ protected Locale calculateLocale(FacesContext context) {
+ if (null == context.getViewRoot()) {
+ throw new FacesException(VIEW_ROOT_IS_NOT_INITIALIZED);
+ } else if (null == context.getViewRoot().getLocale()) {
+ throw new FacesException(LOCALE_IS_NOT_SET);
+ }
+ Locale locale = context.getViewRoot().getLocale();
+ return locale;
+ }
+
// Method for checking input parameters for prevent NPE
private void checkInputParameters(FacesContext context,
ValueExpression target, Object value) {
@@ -140,10 +146,10 @@
/**
* Validate bean property for a new value. TODO - localization ?
*
- * @param base -
- * bean
- * @param property -
- * bean property name.
+ * @param base
+ * - bean
+ * @param property
+ * - bean property name.
* @param value
* new value.
* @return null for a valid value, array of the validation messages
@@ -165,6 +171,24 @@
}
}
+ @SuppressWarnings("unchecked")
+ public String[] validateGraph(FacesContext context, Object value, Set<String> profiles) {
+ String validationMessages[] = null;
+ ClassValidator<Object> validator = (ClassValidator<Object>) getValidator(value
+ .getClass(), calculateLocale(context));
+ if (validator.hasValidationRules()) {
+ InvalidValue[] invalidValues = validator.getInvalidValues(value);
+ if(null != invalidValues && invalidValues.length >0){
+ validationMessages = new String[invalidValues.length];
+ for (int i = 0; i < invalidValues.length; i++) {
+ InvalidValue invalidValue = invalidValues[i];
+ validationMessages[i] = invalidValue.getMessage();
+ }
+ }
+ }
+ return validationMessages;
+ }
+
/**
* Validate bean property of the base object aganist new value
*
@@ -222,12 +246,13 @@
* locale - user locale @return ResourceBundle instance
*/
private ResourceBundle getCurrentResourceBundle(Locale locale) {
- if(null == FacesContext.getCurrentInstance() || null == FacesContext.getCurrentInstance().getApplication()){
+ if (null == FacesContext.getCurrentInstance()
+ || null == FacesContext.getCurrentInstance().getApplication()) {
throw new FacesException(FACES_CONTEXT_IS_NULL);
}
String appBundle = FacesContext.getCurrentInstance().getApplication()
.getMessageBundle();
- if(null == appBundle || null == locale){
+ if (null == appBundle || null == locale) {
return null;
}
ResourceBundle bundle = ResourceBundle.getBundle(appBundle, locale);
@@ -236,8 +261,9 @@
/*
* Method for create new instance of ClassValidator, if same not in cache.
- * @param beanClass - Class to validate @param locale - user Locale,
- * used during validation process @return ClassValidator instance
+ *
+ * @param beanClass - Class to validate @param locale - user Locale, used
+ * during validation process @return ClassValidator instance
*/
@SuppressWarnings("unchecked")
private ClassValidator<? extends Object> createValidator(
@@ -378,10 +404,11 @@
/**
* Constructor for ValidatorKey object
*
- * @param validatableClass -
- * class to validate
- * @param locale -
- * User locale to determine Resource bundle, used during validation process
+ * @param validatableClass
+ * - class to validate
+ * @param locale
+ * - User locale to determine Resource bundle, used during
+ * validation process
*/
public ValidatorKey(Class<? extends Object> validatableClass,
Locale locale) {
@@ -389,7 +416,9 @@
this.locale = locale;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see java.lang.Object#hashCode()
*/
@Override
@@ -405,7 +434,9 @@
return result;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see java.lang.Object#equals(java.lang.Object)
*/
@Override
@@ -430,6 +461,5 @@
return true;
}
-
}
}
16 years, 2 months
JBoss Rich Faces SVN: r9550 - in trunk/test-applications/seleniumTest/src: main/webapp/WEB-INF and 3 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-07-11 13:00:31 -0400 (Fri, 11 Jul 2008)
New Revision: 9550
Added:
trunk/test-applications/seleniumTest/src/main/java/org/ajax4jsf/bean/InplaceInputTestBean.java
trunk/test-applications/seleniumTest/src/main/webapp/pages/inplaceInput/
trunk/test-applications/seleniumTest/src/main/webapp/pages/inplaceInput/inplaceInputTest.xhtml
trunk/test-applications/seleniumTest/src/test/java/org/richfaces/testng/InplaceInputTest.java
Modified:
trunk/test-applications/seleniumTest/src/main/webapp/WEB-INF/faces-config.xml
Log:
InplaceInput component test added
Added: trunk/test-applications/seleniumTest/src/main/java/org/ajax4jsf/bean/InplaceInputTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/src/main/java/org/ajax4jsf/bean/InplaceInputTestBean.java (rev 0)
+++ trunk/test-applications/seleniumTest/src/main/java/org/ajax4jsf/bean/InplaceInputTestBean.java 2008-07-11 17:00:31 UTC (rev 9550)
@@ -0,0 +1,24 @@
+package org.ajax4jsf.bean;
+
+public class InplaceInputTestBean {
+
+ private String text ="";
+
+ /**
+ * Gets value of text field.
+ * @return value of text field
+ */
+ public String getText() {
+ return text;
+ }
+
+ /**
+ * Set a new value for text field.
+ * @param text a new value for text field
+ */
+ public void setText(String text) {
+ this.text = text;
+ }
+
+
+}
Property changes on: trunk/test-applications/seleniumTest/src/main/java/org/ajax4jsf/bean/InplaceInputTestBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Modified: trunk/test-applications/seleniumTest/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/seleniumTest/src/main/webapp/WEB-INF/faces-config.xml 2008-07-11 16:54:10 UTC (rev 9549)
+++ trunk/test-applications/seleniumTest/src/main/webapp/WEB-INF/faces-config.xml 2008-07-11 17:00:31 UTC (rev 9550)
@@ -190,12 +190,17 @@
<managed-bean-name>loadBundleBean</managed-bean-name>
<managed-bean-class>org.ajax4jsf.bean.LoadBundleTestBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
+ </managed-bean>
<managed-bean>
<managed-bean-name>listShuttle</managed-bean-name>
<managed-bean-class>org.ajax4jsf.bean.ListShuttleBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
+ <managed-bean>
+ <managed-bean-name>inplaceInputBean</managed-bean-name>
+ <managed-bean-class>org.ajax4jsf.bean.InplaceInputTestBean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
<navigation-rule>
<from-view-id>/pages/ajaxInclude/step1.xhtml</from-view-id>
<navigation-case>
Added: trunk/test-applications/seleniumTest/src/main/webapp/pages/inplaceInput/inplaceInputTest.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/seleniumTest/src/main/webapp/pages/inplaceInput/inplaceInputTest.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Added: trunk/test-applications/seleniumTest/src/test/java/org/richfaces/testng/InplaceInputTest.java
===================================================================
--- trunk/test-applications/seleniumTest/src/test/java/org/richfaces/testng/InplaceInputTest.java (rev 0)
+++ trunk/test-applications/seleniumTest/src/test/java/org/richfaces/testng/InplaceInputTest.java 2008-07-11 17:00:31 UTC (rev 9550)
@@ -0,0 +1,104 @@
+package org.richfaces.testng;
+
+import org.ajax4jsf.template.Template;
+import org.richfaces.SeleniumTestBase;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+public class InplaceInputTest extends SeleniumTestBase {
+
+ private static final String INPLACE_INPUT_SIMPLE = "inplaceInput";
+
+ private static final String INPLACE_INPUT_DECORATED = "inplaceInputDecorated";
+
+ private static final String INPLACE_INPUT_DECORATED_OK = "inplaceInputDecoratedok";
+
+ private static final String INPLACE_INPUT_FIELD_POSTFIX = "inplaceTmpValue";
+
+ private final static String EVENT_TEST_RESULT_FAILED_TEXT = "No";
+
+ private final static String EVENT_TEST_RESULT_PASSED_TEXT = "Passed";
+
+ @Test
+ public void testInplaceInputComponentLayout(Template template) {
+ renderPage(template);
+ writeStatus("Check component layout");
+
+ String inplaceInputS = getParentId() + "_form:" + INPLACE_INPUT_SIMPLE;
+ String inplaceInputD = getParentId() + "_form:" + INPLACE_INPUT_DECORATED;
+
+ Assert.assertTrue(isPresentById(inplaceInputS));
+ int count = selenium.getXpathCount("//*[@id='" + inplaceInputS + "' and (name()='span' or name()='SPAN')]").intValue();
+ Assert.assertTrue(count == 1, "InplaceInput[" + inplaceInputS + "] has layout=inline(default) and should be rendered as 'span' element");
+
+ Assert.assertTrue(isPresentById(inplaceInputD));
+ count = selenium.getXpathCount("//*[@id='" + inplaceInputD + "' and (name()='DIV' or name()='div')]").intValue();
+ Assert.assertTrue(count == 1, "InplaceInput [" + inplaceInputD + "] has layout=block and should be rendered as 'div' element");
+
+ }
+
+ @Test
+ public void testInplaceInputClientAPI(Template template) {
+ renderPage(template);
+ writeStatus("Check component client API");
+ }
+
+ @Test
+ public void testInplaceInputEvents(Template template) {
+ renderPage(template);
+
+ writeStatus("Check component event triggering");
+
+ String inplaceInputS = getParentId() + "_form:" + INPLACE_INPUT_SIMPLE;
+ String inplaceInputD = getParentId() + "_form:" + INPLACE_INPUT_DECORATED;
+ String inplaceInputDOk = getParentId() + "_form:" + INPLACE_INPUT_DECORATED_OK;
+
+ writeStatus("Click first component being tested");
+
+ clickById(inplaceInputS);
+ AssertTextEquals(inplaceInputS + "_edit", EVENT_TEST_RESULT_PASSED_TEXT, "oneditactivated event is not fired");
+
+ writeStatus("Stop editing first component being tested");
+
+ selenium.windowFocus();
+ AssertTextEquals(inplaceInputS + "_view", EVENT_TEST_RESULT_PASSED_TEXT, "onviewactivated event is not fired");
+
+ writeStatus("Double-click second component being tested");
+
+ selenium.doubleClick(inplaceInputD);
+ AssertTextEquals(inplaceInputD + "_edit", EVENT_TEST_RESULT_PASSED_TEXT, "oneditactivated event is not fired");
+
+ writeStatus("Stop editing second component being tested");
+
+ selenium.fireEvent(inplaceInputDOk, "mousedown");
+ AssertTextEquals(inplaceInputD + "_view", EVENT_TEST_RESULT_PASSED_TEXT, "onviewactivated event is not fired");
+ }
+
+ @Test
+ public void testInplaceInputKeyAttributes(Template template) {
+ renderPage(template);
+
+ String inplaceInputS = getParentId() + "_form:" + INPLACE_INPUT_SIMPLE;
+ String inplaceInputD = getParentId() + "_form:" + INPLACE_INPUT_DECORATED;
+
+ String inplaceInputSInput = inplaceInputS + INPLACE_INPUT_FIELD_POSTFIX;
+ String inplaceInputDInput = inplaceInputD + INPLACE_INPUT_FIELD_POSTFIX;
+
+ writeStatus("Check component's key attributes");
+
+ writeStatus("test 'editEvent' attribute");
+
+ writeStatus("The first component must change your state by single clicking only");
+ clickById(inplaceInputS);
+ AssertVisible(inplaceInputSInput);
+
+ writeStatus("The second component must change your state by double clicking only");
+ selenium.doubleClick(inplaceInputD);
+ AssertVisible(inplaceInputDInput);
+ }
+
+ @Override
+ public String getTestUrl() {
+ return "pages/inplaceInput/inplaceInputTest.xhtml";
+ }
+}
Property changes on: trunk/test-applications/seleniumTest/src/test/java/org/richfaces/testng/InplaceInputTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
16 years, 2 months
JBoss Rich Faces SVN: r9549 - in trunk/test-applications/seleniumTest/src/main/webapp: pages/ajaxMediaOutput and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-07-11 12:54:10 -0400 (Fri, 11 Jul 2008)
New Revision: 9549
Modified:
trunk/test-applications/seleniumTest/src/main/webapp/layout/layout.xhtml
trunk/test-applications/seleniumTest/src/main/webapp/pages/ajaxMediaOutput/ajaxMediaOutputTest.xhtml
Log:
moved js test event methods to layout page
Modified: trunk/test-applications/seleniumTest/src/main/webapp/layout/layout.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/src/main/webapp/layout/layout.xhtml 2008-07-11 16:29:21 UTC (rev 9548)
+++ trunk/test-applications/seleniumTest/src/main/webapp/layout/layout.xhtml 2008-07-11 16:54:10 UTC (rev 9549)
@@ -55,7 +55,21 @@
o.style.fontWeight = '';
}
}
-
+
+ //Marks ${element.id}_${resultElemIdPostfix} result element as passed test
+ //if resultElemIdPostfix is not specified ${element.id}_result will be used instead
+ function testEvent(element, resultElemIdPostfix) {
+ resultElemIdPostfix = resultElemIdPostfix || 'result';
+ element = document.getElementById(element.id + "_" + resultElemIdPostfix);
+ element.style.cssText = 'background-color: green';
+ element.innerHTML = 'Passed';
+ }
+
+ function resetEventTestResult(id) {
+ element = document.getElementById(id);
+ element.style.cssText = 'background-color: white';
+ element.innerHTML = 'No';
+ }
</script>
<style type="text/css">
<ui:insert name="style"/>
Modified: trunk/test-applications/seleniumTest/src/main/webapp/pages/ajaxMediaOutput/ajaxMediaOutputTest.xhtml
===================================================================
(Binary files differ)
16 years, 2 months
JBoss Rich Faces SVN: r9548 - trunk/docs/userguide/en/src/main/resources/images.
by richfaces-svn-commits@lists.jboss.org
Author: cluts
Date: 2008-07-11 12:29:21 -0400 (Fri, 11 Jul 2008)
New Revision: 9548
Modified:
trunk/docs/userguide/en/src/main/resources/images/suggestionbox2.png
trunk/docs/userguide/en/src/main/resources/images/suggestionbox3.png
trunk/docs/userguide/en/src/main/resources/images/suggestionbox_cn.png
trunk/docs/userguide/en/src/main/resources/images/suggestionbox_init.png
trunk/docs/userguide/en/src/main/resources/images/tab2.png
trunk/docs/userguide/en/src/main/resources/images/tabPanel_cn.png
trunk/docs/userguide/en/src/main/resources/images/tabPanel_init.png
trunk/docs/userguide/en/src/main/resources/images/tab_init.png
trunk/docs/userguide/en/src/main/resources/images/tab_oc.png
trunk/docs/userguide/en/src/main/resources/images/tab_pc.png
trunk/docs/userguide/en/src/main/resources/images/toggleControl_init.png
trunk/docs/userguide/en/src/main/resources/images/togglePanel_init.png
trunk/docs/userguide/en/src/main/resources/images/togglePanel_oc.png
trunk/docs/userguide/en/src/main/resources/images/togglePanel_pc.png
trunk/docs/userguide/en/src/main/resources/images/toolBar2.png
trunk/docs/userguide/en/src/main/resources/images/toolBar4.png
trunk/docs/userguide/en/src/main/resources/images/toolBarGroup2.png
trunk/docs/userguide/en/src/main/resources/images/toolBarGroup_init.png
trunk/docs/userguide/en/src/main/resources/images/toolBar_cn.png
trunk/docs/userguide/en/src/main/resources/images/toolBar_init.png
trunk/docs/userguide/en/src/main/resources/images/toolTip_init.png
trunk/docs/userguide/en/src/main/resources/images/treeNode2.png
trunk/docs/userguide/en/src/main/resources/images/treeNode_cn.png
Log:
RF-3876 - done for suggestionbox, tab, tabPanel, toggleControl, togglePanel, toolBar, toolBarGroup, toolTip, treeNode.
Modified: trunk/docs/userguide/en/src/main/resources/images/suggestionbox2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/suggestionbox3.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/suggestionbox_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/suggestionbox_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tab2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tabPanel_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tabPanel_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tab_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tab_oc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/tab_pc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toggleControl_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/togglePanel_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/togglePanel_oc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/togglePanel_pc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBar2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBar4.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBarGroup2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBarGroup_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBar_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolBar_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/toolTip_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/treeNode2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/treeNode_cn.png
===================================================================
(Binary files differ)
16 years, 2 months
JBoss Rich Faces SVN: r9547 - trunk/docs/userguide/en/src/main/resources/images.
by richfaces-svn-commits@lists.jboss.org
Author: cluts
Date: 2008-07-11 12:27:11 -0400 (Fri, 11 Jul 2008)
New Revision: 9547
Modified:
trunk/docs/userguide/en/src/main/resources/images/spacer_init.png
trunk/docs/userguide/en/src/main/resources/images/subTable_cn.png
Log:
RF-3876 - done for spacer and subTable.
Modified: trunk/docs/userguide/en/src/main/resources/images/spacer_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/subTable_cn.png
===================================================================
(Binary files differ)
16 years, 2 months
JBoss Rich Faces SVN: r9546 - trunk/test-applications.
by richfaces-svn-commits@lists.jboss.org
Author: mvitenkov
Date: 2008-07-11 12:24:14 -0400 (Fri, 11 Jul 2008)
New Revision: 9546
Modified:
trunk/test-applications/pom.xml
Log:
el-api dependence
Modified: trunk/test-applications/pom.xml
===================================================================
--- trunk/test-applications/pom.xml 2008-07-11 16:23:05 UTC (rev 9545)
+++ trunk/test-applications/pom.xml 2008-07-11 16:24:14 UTC (rev 9546)
@@ -96,6 +96,12 @@
<groupId>javax.servlet</groupId>
<version>2.5</version>
</dependency>
+ <dependency>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ <version>1.0</version>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<profiles>
16 years, 2 months
JBoss Rich Faces SVN: r9545 - trunk/docs/userguide/en/src/main/resources/images.
by richfaces-svn-commits@lists.jboss.org
Author: cluts
Date: 2008-07-11 12:23:05 -0400 (Fri, 11 Jul 2008)
New Revision: 9545
Modified:
trunk/docs/userguide/en/src/main/resources/images/panelBarItem_cn.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup3.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup4.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup_cn.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup_cn2.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuItem_cn.png
trunk/docs/userguide/en/src/main/resources/images/panelMenuItem_cn2.png
trunk/docs/userguide/en/src/main/resources/images/panelMenugItem3.png
trunk/docs/userguide/en/src/main/resources/images/pickList_cn.png
trunk/docs/userguide/en/src/main/resources/images/pickList_cn2.png
trunk/docs/userguide/en/src/main/resources/images/progressBar_cn.png
trunk/docs/userguide/en/src/main/resources/images/scrollableDataTable_cn.png
trunk/docs/userguide/en/src/main/resources/images/separator2.png
trunk/docs/userguide/en/src/main/resources/images/simpleTogglePanel2.png
Log:
RF-3876 - done for panelBarItem, panelMenuItem, panelMenuGroup, pickList, progressBar, scrollableDataTable, separator, simpleTogglePanel.
Modified: trunk/docs/userguide/en/src/main/resources/images/panelBarItem_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup3.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup4.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuGroup_cn2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuItem_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenuItem_cn2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/panelMenugItem3.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/pickList_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/pickList_cn2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/progressBar_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/scrollableDataTable_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/separator2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/simpleTogglePanel2.png
===================================================================
(Binary files differ)
16 years, 2 months
JBoss Rich Faces SVN: r9544 - trunk/docs/userguide/en/src/main/resources/images.
by richfaces-svn-commits@lists.jboss.org
Author: cluts
Date: 2008-07-11 12:21:18 -0400 (Fri, 11 Jul 2008)
New Revision: 9544
Modified:
trunk/docs/userguide/en/src/main/resources/images/insert_init.png
trunk/docs/userguide/en/src/main/resources/images/listShuttle_cn.png
trunk/docs/userguide/en/src/main/resources/images/listShuttle_cn2.png
trunk/docs/userguide/en/src/main/resources/images/menuGroup_cn.png
trunk/docs/userguide/en/src/main/resources/images/menuGroup_oc.png
trunk/docs/userguide/en/src/main/resources/images/menuGroup_pc.png
trunk/docs/userguide/en/src/main/resources/images/menuItem_cn.png
trunk/docs/userguide/en/src/main/resources/images/menuItem_oc.png
trunk/docs/userguide/en/src/main/resources/images/menuItem_pc.png
trunk/docs/userguide/en/src/main/resources/images/menuSeparator_pc.png
trunk/docs/userguide/en/src/main/resources/images/message_init.png
trunk/docs/userguide/en/src/main/resources/images/messages_cn.png
trunk/docs/userguide/en/src/main/resources/images/orderingList_cn.png
Log:
RF-3876 - done for insert, listShuttle, menuItem, menuGroup, message, messages, orderingList.
Modified: trunk/docs/userguide/en/src/main/resources/images/insert_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/listShuttle_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/listShuttle_cn2.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuGroup_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuGroup_oc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuGroup_pc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuItem_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuItem_oc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuItem_pc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/menuSeparator_pc.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/message_init.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/messages_cn.png
===================================================================
(Binary files differ)
Modified: trunk/docs/userguide/en/src/main/resources/images/orderingList_cn.png
===================================================================
(Binary files differ)
16 years, 2 months