JBoss Rich Faces SVN: r21723 - modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax.
by richfaces-svn-commits@lists.jboss.org
Author: ppitonak(a)redhat.com
Date: 2011-02-17 07:22:10 -0500 (Thu, 17 Feb 2011)
New Revision: 21723
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandButton.java
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandLink.java
Log:
added issue tracking information for a4j:ajax tests
Modified: modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandButton.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandButton.java 2011-02-17 10:19:21 UTC (rev 21722)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandButton.java 2011-02-17 12:22:10 UTC (rev 21723)
@@ -35,6 +35,7 @@
* @author <a href="mailto:ppitonak@redhat.com">Pavol Pitonak</a>
* @version $Revision$
*/
+@IssueTracking("https://issues.jboss.org/browse/RF-10482")
public class TestHCommandButton extends AbstractTestCommand {
private JQueryLocator button = pjq("input[type=submit][id$=commandButton]");
Modified: modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandLink.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandLink.java 2011-02-17 10:19:21 UTC (rev 21722)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jAjax/TestHCommandLink.java 2011-02-17 12:22:10 UTC (rev 21723)
@@ -35,6 +35,7 @@
* @author <a href="mailto:ppitonak@redhat.com">Pavol Pitonak</a>
* @version $Revision$
*/
+@IssueTracking("https://issues.jboss.org/browse/RF-10482")
public class TestHCommandLink extends AbstractTestCommand {
private JQueryLocator link = pjq("a[id$=commandLink]");
15 years, 2 months
JBoss Rich Faces SVN: r21722 - in trunk/ui: iteration/ui/src/main/java/org/richfaces/component and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2011-02-17 05:19:21 -0500 (Thu, 17 Feb 2011)
New Revision: 21722
Modified:
trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/component/AbstractDataGrid.java
Log:
https://issues.jboss.org/browse/RF-10527
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java 2011-02-17 08:38:39 UTC (rev 21721)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java 2011-02-17 10:19:21 UTC (rev 21722)
@@ -619,6 +619,7 @@
}
}
+ @Attribute
public Converter getRowKeyConverter() {
if (this.rowKeyConverter != null) {
return this.rowKeyConverter;
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/component/AbstractDataGrid.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/component/AbstractDataGrid.java 2011-02-17 08:38:39 UTC (rev 21721)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/component/AbstractDataGrid.java 2011-02-17 10:19:21 UTC (rev 21722)
@@ -108,6 +108,7 @@
return getFacets().get(NODATA_FACET_NAME);
}
+ @Attribute
public int getColumns() {
int columns = (Integer)getStateHelper().eval(PropertyKeys.columns, 1);
return (columns < 1 ? 1 : columns);
15 years, 2 months
JBoss Rich Faces SVN: r21721 - trunk/examples/richfaces-showcase/src/main/webapp/images/icons.
by richfaces-svn-commits@lists.jboss.org
Author: Ochikvina
Date: 2011-02-17 03:38:39 -0500 (Thu, 17 Feb 2011)
New Revision: 21721
Added:
trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-ic.gif
trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-small-ic.gif
Log:
RF-9636 - added 'new' markers.
Added: trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-ic.gif
===================================================================
(Binary files differ)
Property changes on: trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-ic.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-small-ic.gif
===================================================================
(Binary files differ)
Property changes on: trunk/examples/richfaces-showcase/src/main/webapp/images/icons/new-small-ic.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
15 years, 2 months
JBoss Rich Faces SVN: r21720 - modules/docs/trunk/Component_Reference/src/main/docbook/en-US.
by richfaces-svn-commits@lists.jboss.org
Author: SeanRogers
Date: 2011-02-17 00:51:32 -0500 (Thu, 17 Feb 2011)
New Revision: 21720
Modified:
modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Rich_inputs.xml
Log:
Partial update to calendar docs for RFPL-985
Modified: modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Rich_inputs.xml
===================================================================
--- modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Rich_inputs.xml 2011-02-17 00:12:20 UTC (rev 21719)
+++ modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Rich_inputs.xml 2011-02-17 05:51:32 UTC (rev 21720)
@@ -222,7 +222,7 @@
<section id="sect-Component_Reference-richcalendar-Basic_usage">
<title>Basic usage</title>
<para>
- Basic usage of the <sgmltag><rich:calendar></sgmltag> component requires only the <varname>value</varname> attribute, which holds the currently selected date. <xref linkend="exam-Component_Reference-richcalendar-Basic_usage" /> shows a basic declaration, with the value pointing to a data model.
+ Basic usage of the <sgmltag><rich:calendar></sgmltag> component requires only the <varname>value</varname> attribute, which holds the currently selected date. <xref linkend="exam-Component_Reference-richcalendar-Basic_usage" /> shows a basic declaration, with the value pointing to a bean property. The bean property holds the selected date.
</para>
<example id="exam-Component_Reference-richcalendar-Basic_usage">
<title>Basic usage</title>
@@ -230,27 +230,6 @@
</example>
</section>
- <section id="sect-Component_Reference-richcalendar-Using_a_data_model">
- <title>Using a data model</title>
- <para>
- The <sgmltag><rich:calendar></sgmltag> component supports two different ways of loading data through defining the <varname>mode</varname> attribute. When not specified, the component uses <literal>client</literal> mode, which loads an initial portion of data within a set date range. The range can be defined by using the <varname>preloadDateRangeBegin</varname> and <varname>preloadDateRangeEnd</varname> attributes. Additional data requests are not sent.
- </para>
- <para>
- Alternatively, with <code>mode="ajax"</code> the <sgmltag><rich:calendar></sgmltag> requests portions of data for rendering from a special data model. The data model can be defined through the <varname>dataModel</varname> attribute, which points to an object that implements the <classname>CalendarDataModel</classname> interface. If the <varname>dataModel</varname> attribute is not defined or has a value of <literal>null</literal>, the <literal>ajax</literal> mode functions the same as the <literal>client</literal> mode.
- </para>
- </section>
-
- <section id="sect-Component_Reference-richcalendar-Client-side_customization">
- <title>Client-side customization</title>
- <para>
- Instead of using a data model, the <sgmltag><rich:calendar></sgmltag> component can be customized on the client-side. <xref linkend="exam-Component_Reference-richcalendar-Client-side_customization" /> demonstrates how client-side customization can be used to style different days in a calendar.
- </para>
- <example id="exam-Component_Reference-richcalendar-Client-side_customization">
- <title>Client-side customization</title>
- <programlisting language="XML" role="XML"><xi:include parse="text" href="extras/exam-Component_Reference-richcalendar-Client-side_customization.xml_sample" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </example>
- </section>
-
<section id="sect-Component_Reference-richcalendar-Behavior_and_appearance">
<title>Behavior and appearance</title>
<para>
@@ -307,6 +286,8 @@
<para>
To make the entire calendar read-only, set <code>readonly="true"</code>. This allows months and years to be browsed through with the arrow controls, but dates and times cannot be selected.
</para>
+ <!-- Not supported -->
+ <!--
<para>
The styling and appearance of the calendar can be fully customized using facets. The <literal>header</literal> and <literal>footer</literal> facets define the calendar's header and footer. The <literal>optionalHeader</literal> and <literal>optionalFooter</literal> facets define the calendar's optional header and optional footer. The <literal>weekNumber</literal> facet controls the appearance of the week numbers, and the <literal>weekDay</literal> facet controls the appearance of the individual day cells on the calendar. <xref linkend="figu-Component_Reference-richcalendar-Facet_elements" /> shows some of the elements available for customization through the various facets.
</para>
@@ -323,6 +304,7 @@
</textobject>
</mediaobject>
</figure>
+ -->
</section>
<section id="sect-Component_Reference-richcalendar-Time_of_day">
@@ -390,6 +372,30 @@
</section>
-->
+ <section id="sect-Component_Reference-richcalendar-Using_a_data_model">
+ <title>Using a data model</title>
+ <para>
+ The look and feel of the <sgmltag><rich:calendar></sgmltag> component can be customized through the use of a data model on the server side. The component supports two different ways of loading data from the server side through defining the <varname>mode</varname> attribute.
+ </para>
+ <para>
+ When the <varname>mode</varname> attribute is not specified, the component uses the <literal>client</literal> mode. The <literal>client</literal> mode loads an initial portion of data within a set date range. The range can be defined by using the <varname>preloadDateRangeBegin</varname> and <varname>preloadDateRangeEnd</varname> attributes. Additional data requests are not sent.
+ </para>
+ <para>
+ Alternatively, with <code>mode="ajax"</code> the <sgmltag><rich:calendar></sgmltag> requests portions of data for rendering from a special data model. The data model can be defined through the <varname>dataModel</varname> attribute, which points to an object that implements the <classname>CalendarDataModel</classname> interface. If the <varname>dataModel</varname> attribute is not defined or has a value of <literal>null</literal>, the <literal>ajax</literal> mode functions the same as the <literal>client</literal> mode.
+ </para>
+ </section>
+
+ <section id="sect-Component_Reference-richcalendar-Client-side_customization">
+ <title>Client-side customization</title>
+ <para>
+ Instead of using a data model, the <sgmltag><rich:calendar></sgmltag> component can be customized on the client-side. <xref linkend="exam-Component_Reference-richcalendar-Client-side_customization" /> demonstrates how client-side customization can be used to style different days in a calendar.
+ </para>
+ <example id="exam-Component_Reference-richcalendar-Client-side_customization">
+ <title>Client-side customization</title>
+ <programlisting language="XML" role="XML"><xi:include parse="text" href="extras/exam-Component_Reference-richcalendar-Client-side_customization.xml_sample" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+ </example>
+ </section>
+
<section id="sect-Component_Reference-richcalendar-JavaScript_API">
<title>JavaScript API</title>
<para>
15 years, 2 months
JBoss Rich Faces SVN: r21719 - in trunk/cdk: maven-cdk-plugin/src/it/annotated-component/src/main/templates and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2011-02-16 19:12:20 -0500 (Wed, 16 Feb 2011)
New Revision: 21719
Modified:
trunk/cdk/generator/src/main/resources/META-INF/templates/java/emptiness-check-method.ftl
trunk/cdk/maven-cdk-plugin/src/it/annotated-component/src/main/templates/testComponent.xml
Log:
RESOLVED - issue RF-10004: CDK: isEmpty method is generated incorrectly
https://issues.jboss.org/browse/RF-10004
Modified: trunk/cdk/generator/src/main/resources/META-INF/templates/java/emptiness-check-method.ftl
===================================================================
--- trunk/cdk/generator/src/main/resources/META-INF/templates/java/emptiness-check-method.ftl 2011-02-17 00:02:34 UTC (rev 21718)
+++ trunk/cdk/generator/src/main/resources/META-INF/templates/java/emptiness-check-method.ftl 2011-02-17 00:12:20 UTC (rev 21719)
@@ -1 +1 @@
-return object == null;
\ No newline at end of file
+return object == null || object.toString().length() == 0;
\ No newline at end of file
Modified: trunk/cdk/maven-cdk-plugin/src/it/annotated-component/src/main/templates/testComponent.xml
===================================================================
--- trunk/cdk/maven-cdk-plugin/src/it/annotated-component/src/main/templates/testComponent.xml 2011-02-17 00:02:34 UTC (rev 21718)
+++ trunk/cdk/maven-cdk-plugin/src/it/annotated-component/src/main/templates/testComponent.xml 2011-02-17 00:12:20 UTC (rev 21719)
@@ -48,6 +48,7 @@
</c:when>
<c:otherwise>otherwise content</c:otherwise>
</c:choose>
+ <c:if test='#{empty ""}'>empty content</c:if>
<img src="#{component.attributes['imgAge']}" alt="#{component.attributes['imgAlt']}" x:ismap="disabled">
</img>
<ul x:style="listStyle" x:class="listClass" cdk:passThrough="id title:listTitle onclick:onlistclick ondblclick:onlistdblclick">
15 years, 2 months
JBoss Rich Faces SVN: r21718 - trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2011-02-16 19:02:34 -0500 (Wed, 16 Feb 2011)
New Revision: 21718
Modified:
trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/tree.js
Log:
https://issues.jboss.org/browse/RF-10514
Modified: trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/tree.js
===================================================================
--- trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/tree.js 2011-02-16 23:59:59 UTC (rev 21717)
+++ trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/tree.js 2011-02-17 00:02:34 UTC (rev 21718)
@@ -354,12 +354,16 @@
this.__treeRootElt.delegate(".rf-trn-cnt", "mousedown", this, this.__nodeSelectionActivated);
- this.__selectionInput = $(" > .rf-tr-sel-inp", this.__treeRootElt);
+ this.__findSelectionInput();
this.__selection = new richfaces.ui.TreeNodeSet(this.__selectionInput.val());
$(document).ready($.proxy(this.__updateSelectionFromInput, this));
},
+ __findSelectionInput: function () {
+ this.__selectionInput = $(" > .rf-tr-sel-inp", this.__treeRootElt);
+ },
+
__addLastNodeClass: function() {
//stub function overriding parent class method
},
@@ -468,6 +472,7 @@
},
__updateSelectionFromInput: function() {
+ this.__findSelectionInput();
this.__updateSelection(new richfaces.ui.TreeNodeSet(this.__selectionInput.val()));
},
15 years, 2 months
JBoss Rich Faces SVN: r21717 - trunk/cdk/generator/src/main/java/org/richfaces/cdk/templatecompiler/model.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2011-02-16 18:59:59 -0500 (Wed, 16 Feb 2011)
New Revision: 21717
Modified:
trunk/cdk/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java
Log:
RESOLVED - issue RF-9538: CDK component generator not compilable with OpenJDK
https://issues.jboss.org/browse/RF-9538
Modified: trunk/cdk/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java
===================================================================
--- trunk/cdk/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java 2011-02-16 23:04:57 UTC (rev 21716)
+++ trunk/cdk/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java 2011-02-16 23:59:59 UTC (rev 21717)
@@ -22,8 +22,10 @@
*/
package org.richfaces.cdk.templatecompiler.model;
-import static org.richfaces.cdk.templatecompiler.QNameComparator.QNAME_COMPARATOR;
+import static org.richfaces.cdk.templatecompiler.QNameComparator.*;
+
import java.util.Map;
+import java.util.TreeMap;
import javax.xml.bind.annotation.XmlAnyAttribute;
import javax.xml.bind.annotation.XmlAttribute;
@@ -31,8 +33,6 @@
import org.richfaces.cdk.CdkException;
-import com.google.common.collect.Maps;
-
/**
* <p class="changed_added_4_0"></p>
*
@@ -44,7 +44,7 @@
private String passThrough;
private String passThroughWithExclusions;
- private Map<QName, Object> attributes = Maps.newTreeMap(QNAME_COMPARATOR);
+ private Map<QName, Object> attributes = new TreeMap<QName, Object>(QNAME_COMPARATOR);
/**
* <p class="changed_added_4_0"></p>
15 years, 2 months
JBoss Rich Faces SVN: r21716 - trunk/core/impl/src/main/java/org/richfaces/cache.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2011-02-16 18:04:57 -0500 (Wed, 16 Feb 2011)
New Revision: 21716
Removed:
trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMap.java
trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMapEntry.java
Log:
Unused legacy classes removed
Deleted: trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMap.java
===================================================================
--- trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMap.java 2011-02-16 23:04:13 UTC (rev 21715)
+++ trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMap.java 2011-02-16 23:04:57 UTC (rev 21716)
@@ -1,110 +0,0 @@
-/**
- * License Agreement.
- *
- * Rich Faces - Natural Ajax for Java Server Faces (JSF)
- *
- * Copyright (C) 2007 Exadel, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-package org.richfaces.cache;
-
-import java.util.AbstractMap;
-import java.util.AbstractSet;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import javax.servlet.ServletContext;
-
-/**
- * @author Nick Belaevski - nbelaevski(a)exadel.com
- * created 02.05.2007
- */
-@Deprecated
-public class ServletContextInitMap extends AbstractMap<String, String> {
- private ServletContext servletContext;
-
- public ServletContextInitMap(ServletContext servletContext) {
- super();
- this.servletContext = servletContext;
- }
-
- @Override
- public Set<Map.Entry<String, String>> entrySet() {
- return new MyAbstractSet();
- }
-
- @Override
- public String remove(Object key) {
- throw new UnsupportedOperationException("This map is read-only");
- }
-
- @Override
- public String put(String key, String value) {
- throw new UnsupportedOperationException("This map is read-only");
- }
-
- @Override
- public void putAll(Map<? extends String, ? extends String> m) {
- throw new UnsupportedOperationException("This map is read-only");
- }
-
- private class MyAbstractSet extends AbstractSet<Map.Entry<String, String>> {
- @Override
- public Iterator<Map.Entry<String, String>> iterator() {
- return new MyIterator();
- }
-
- @Override
- public int size() {
- int result = 0;
- @SuppressWarnings("unchecked") Enumeration<String> initNames = servletContext.getInitParameterNames();
-
- while (initNames.hasMoreElements()) {
- initNames.nextElement();
- result++;
- }
-
- return result;
- }
-
- @Override
- public boolean isEmpty() {
- return !servletContext.getInitParameterNames().hasMoreElements();
- }
- }
-
- private class MyIterator implements Iterator<Map.Entry<String, String>> {
- @SuppressWarnings("unchecked")
- private Enumeration<String> initNames = servletContext.getInitParameterNames();
-
- public boolean hasNext() {
- return initNames.hasMoreElements();
- }
-
- public Map.Entry<String, String> next() {
- String key = initNames.nextElement();
- String value = servletContext.getInitParameter(key);
-
- return new ServletContextInitMapEntry<String, String>(key, value);
- }
-
- public void remove() {
- throw new UnsupportedOperationException("This map is read-only");
- }
- }
-}
Deleted: trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMapEntry.java
===================================================================
--- trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMapEntry.java 2011-02-16 23:04:13 UTC (rev 21715)
+++ trunk/core/impl/src/main/java/org/richfaces/cache/ServletContextInitMapEntry.java 2011-02-16 23:04:57 UTC (rev 21716)
@@ -1,51 +0,0 @@
-/**
- * License Agreement.
- *
- * Rich Faces - Natural Ajax for Java Server Faces (JSF)
- *
- * Copyright (C) 2007 Exadel, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-package org.richfaces.cache;
-
-import java.util.Map;
-
-/**
- * User: akolonitsky
- * Date: Oct 13, 2009
- */
-class ServletContextInitMapEntry<K, V> implements Map.Entry<K, V> {
- private K key;
- private V value;
-
- ServletContextInitMapEntry(K key, V value) {
- super();
- this.key = key;
- this.value = value;
- }
-
- public K getKey() {
- return key;
- }
-
- public V getValue() {
- return value;
- }
-
- public V setValue(V value) {
- throw new UnsupportedOperationException("This map is read-only");
- }
-}
15 years, 2 months
JBoss Rich Faces SVN: r21715 - in trunk/ui/common/ui/src: test/java/org/richfaces/component and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2011-02-16 18:04:13 -0500 (Wed, 16 Feb 2011)
New Revision: 21715
Added:
trunk/ui/common/ui/src/main/java/org/richfaces/component/DataAdaptorIterationState.java
trunk/ui/common/ui/src/test/java/org/richfaces/component/SavedStateTest.java
Modified:
trunk/ui/common/ui/src/main/java/org/richfaces/component/SavedState.java
trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java
Log:
https://issues.jboss.org/browse/RF-10497
Added: trunk/ui/common/ui/src/main/java/org/richfaces/component/DataAdaptorIterationState.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/component/DataAdaptorIterationState.java (rev 0)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/component/DataAdaptorIterationState.java 2011-02-16 23:04:13 UTC (rev 21715)
@@ -0,0 +1,124 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2011, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.component;
+
+import java.io.Serializable;
+
+import javax.faces.component.StateHolder;
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.model.DataComponentState;
+import org.ajax4jsf.model.ExtendedDataModel;
+
+public final class DataAdaptorIterationState implements StateHolder {
+
+ private DataComponentState componentState;
+
+ private Object savedComponentState;
+
+ private boolean componentStateIsStateHolder;
+
+ private ExtendedDataModel<?> dataModel;
+
+ public DataAdaptorIterationState() {
+ super();
+ }
+
+ public DataAdaptorIterationState(DataComponentState componentState, ExtendedDataModel<?> dataModel) {
+ super();
+ this.componentState = componentState;
+ this.dataModel = dataModel;
+ }
+
+ public ExtendedDataModel<?> getDataModel() {
+ return dataModel;
+ }
+
+ public DataComponentState getComponentState() {
+ return componentState;
+ }
+
+ /**
+ * @param uiDataAdaptor
+ */
+ public void restoreComponentState(UIDataAdaptor uiDataAdaptor) {
+ if (savedComponentState != null && componentStateIsStateHolder) {
+ componentState = uiDataAdaptor.createComponentState();
+ ((StateHolder) componentState).restoreState(FacesContext.getCurrentInstance(), savedComponentState);
+ savedComponentState = null;
+ }
+ }
+
+ public void setTransient(boolean newTransientValue) {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean isTransient() {
+ if (componentState instanceof StateHolder) {
+ return ((StateHolder) componentState).isTransient();
+ }
+
+ if (componentState instanceof Serializable) {
+ return false;
+ }
+
+ return true;
+ }
+
+ public Object saveState(FacesContext context) {
+ if (isTransient()) {
+ return null;
+ }
+
+ boolean localComponentStateIsHolder = false;
+ Object localSavedComponentState = null;
+
+ if (componentState instanceof StateHolder) {
+ localComponentStateIsHolder = true;
+
+ StateHolder stateHolder = (StateHolder) componentState;
+ localSavedComponentState = stateHolder.saveState(context);
+ } else if (componentState instanceof Serializable) {
+ localSavedComponentState = componentState;
+ }
+
+ return new Object[] {
+ localComponentStateIsHolder ? Boolean.TRUE : Boolean.FALSE,
+ localSavedComponentState
+ };
+ }
+
+ public void restoreState(FacesContext context, Object stateObject) {
+ if (stateObject != null) {
+ Object[] state = (Object[]) stateObject;
+ componentStateIsStateHolder = Boolean.TRUE.equals(state[0]);
+ Object localSavedComponentState = state[1];
+
+ if (componentStateIsStateHolder) {
+ savedComponentState = localSavedComponentState;
+ } else {
+ componentState = (DataComponentState) localSavedComponentState;
+ }
+ }
+ }
+
+}
\ No newline at end of file
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/component/SavedState.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/component/SavedState.java 2011-02-16 21:38:58 UTC (rev 21714)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/component/SavedState.java 2011-02-16 23:04:13 UTC (rev 21715)
@@ -22,10 +22,11 @@
package org.richfaces.component;
-import java.io.Serializable;
-
import javax.faces.component.EditableValueHolder;
+import javax.faces.component.StateHolder;
+import javax.faces.component.UIComponentBase;
import javax.faces.component.UIForm;
+import javax.faces.context.FacesContext;
import org.ajax4jsf.component.IterationStateHolder;
@@ -37,7 +38,7 @@
*
* @author shura
*/
-final class SavedState implements Serializable {
+public final class SavedState implements StateHolder {
public static final SavedState EMPTY = new SavedState();
@@ -114,6 +115,14 @@
this.iterationState = iterationState;
}
+ boolean isSubmitted() {
+ return submitted;
+ }
+
+ void setSubmitted(boolean submitted) {
+ this.submitted = submitted;
+ }
+
@Override
public String toString() {
if (iterationState != null) {
@@ -138,4 +147,75 @@
public void apply(UIForm form) {
form.setSubmitted(this.submitted);
}
+
+ private boolean isObjectTransient(Object o) {
+ if (o == null) {
+ return true;
+ }
+
+ if (o instanceof StateHolder) {
+ return ((StateHolder) o).isTransient();
+ }
+
+ return false;
+ }
+
+ public void setTransient(boolean newTransientValue) {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean isTransient() {
+ if (iterationState != null) {
+ return isObjectTransient(iterationState);
+ }
+
+ if (!valid) {
+ return false;
+ }
+
+ if (localValueSet || submitted) {
+ return false;
+ }
+
+ return isObjectTransient(submittedValue) && isObjectTransient(value);
+ }
+
+ public Object saveState(FacesContext context) {
+ if (isTransient()) {
+ return null;
+ }
+
+ if (iterationState != null) {
+ return new Object[] {
+ UIComponentBase.saveAttachedState(context, iterationState)
+ };
+ } else {
+ return new Object[] {
+ valid ? Boolean.TRUE : Boolean.FALSE,
+ localValueSet ? Boolean.TRUE : Boolean.FALSE,
+ submitted ? Boolean.TRUE : Boolean.FALSE,
+ UIComponentBase.saveAttachedState(context, submittedValue),
+ UIComponentBase.saveAttachedState(context, value)
+ };
+ }
+ }
+
+ public void restoreState(FacesContext context, Object stateObject) {
+ if (stateObject == null) {
+ return;
+ }
+
+ Object[] state = (Object[]) stateObject;
+
+ if (state.length == 1) {
+ iterationState = UIComponentBase.restoreAttachedState(context, state[0]);
+ } else {
+ valid = Boolean.TRUE.equals(state[0]);
+ localValueSet = Boolean.TRUE.equals(state[1]);
+ submitted = Boolean.TRUE.equals(state[2]);
+ submittedValue = UIComponentBase.restoreAttachedState(context, state[3]);
+ value = UIComponentBase.restoreAttachedState(context, state[4]);
+ }
+ }
+
}
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java 2011-02-16 21:38:58 UTC (rev 21714)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/component/UIDataAdaptor.java 2011-02-16 23:04:13 UTC (rev 21715)
@@ -24,8 +24,6 @@
import static org.richfaces.component.util.Strings.NamingContainerDataHolder.SEPARATOR_CHAR_JOINER;
-import java.io.IOException;
-import java.io.Serializable;
import java.text.MessageFormat;
import java.util.Collection;
import java.util.Collections;
@@ -95,103 +93,6 @@
*/
public static final String COMPONENT_TYPE = "org.richfaces.Data";
- private static final class IterationState implements Serializable {
-
- private static final long serialVersionUID = -3502645160277416066L;
-
- private DataComponentState componentState;
-
- private Object savedComponentState;
-
- private boolean componentStateIsStateHolder;
-
- private transient ExtendedDataModel<?> dataModel;
-
- public IterationState() {
- super();
- }
-
- public IterationState(DataComponentState componentState, ExtendedDataModel<?> dataModel) {
- super();
- this.componentState = componentState;
- this.dataModel = dataModel;
- }
-
- public ExtendedDataModel<?> getDataModel() {
- return dataModel;
- }
-
- public DataComponentState getComponentState() {
- return componentState;
- }
-
- /**
- * @param uiDataAdaptor
- */
- public void restoreComponentState(UIDataAdaptor uiDataAdaptor) {
- if (savedComponentState != null && componentStateIsStateHolder) {
- componentState = uiDataAdaptor.createComponentState();
- ((StateHolder) componentState).restoreState(FacesContext.getCurrentInstance(), savedComponentState);
- savedComponentState = null;
- }
- }
-
- final Object saveState() {
- boolean localComponentStateIsHolder = false;
- Object localSavedComponentState = null;
-
- if (componentState != null) {
- if (componentState instanceof StateHolder) {
- localComponentStateIsHolder = true;
-
- StateHolder stateHolder = (StateHolder) componentState;
- if (!stateHolder.isTransient()) {
- localSavedComponentState = stateHolder.saveState(FacesContext.getCurrentInstance());
- }
- } else {
- if (componentState instanceof Serializable) {
- localSavedComponentState = componentState;
- }
- }
- }
-
- if (localSavedComponentState != null) {
- return new Object[] {
- localComponentStateIsHolder,
- localSavedComponentState
- };
- } else {
- return null;
- }
- }
-
- final void restoreState(Object stateObject) {
- if (stateObject != null) {
- Object[] state = (Object[]) stateObject;
- componentStateIsStateHolder = Boolean.TRUE.equals(state[0]);
- Object localSavedComponentState = state[1];
-
- if (componentStateIsStateHolder) {
- savedComponentState = localSavedComponentState;
- } else {
- componentState = (DataComponentState) localSavedComponentState;
- }
- }
- }
-
- private void writeObject(java.io.ObjectOutputStream out)
- throws IOException {
-
- out.writeObject(saveState());
- }
-
- private void readObject(java.io.ObjectInputStream in)
- throws IOException, ClassNotFoundException {
-
- restoreState(in.readObject());
- }
- }
-
private static final VisitCallback STUB_CALLBACK = new VisitCallback() {
public VisitResult visit(VisitContext context, UIComponent target) {
@@ -968,7 +869,7 @@
public Object getIterationState() {
assert rowKey == null;
- return new IterationState(this.componentState, this.extendedDataModel);
+ return new DataAdaptorIterationState(this.componentState, this.extendedDataModel);
}
/*
@@ -982,7 +883,7 @@
// TODO - ?
// restoreChildState(getFacesContext());
if (stateObject != null) {
- IterationState iterationState = (IterationState) stateObject;
+ DataAdaptorIterationState iterationState = (DataAdaptorIterationState) stateObject;
iterationState.restoreComponentState(this);
this.componentState = iterationState.getComponentState();
@@ -1053,7 +954,7 @@
@Override
public Object saveState(FacesContext context) {
Object parentState = super.saveState(context);
- Object savedComponentState = new IterationState(componentState, extendedDataModel).saveState();
+ Object savedComponentState = new DataAdaptorIterationState(componentState, extendedDataModel).saveState(context);
Object converterState = null;
boolean nullDelta = true;
@@ -1112,8 +1013,8 @@
super.restoreState(context, state[0]);
if (state[1] != null) {
- IterationState iterationState = new IterationState();
- iterationState.restoreState(state[1]);
+ DataAdaptorIterationState iterationState = new DataAdaptorIterationState();
+ iterationState.restoreState(context, state[1]);
iterationState.restoreComponentState(this);
// TODO update state model binding
Added: trunk/ui/common/ui/src/test/java/org/richfaces/component/SavedStateTest.java
===================================================================
--- trunk/ui/common/ui/src/test/java/org/richfaces/component/SavedStateTest.java (rev 0)
+++ trunk/ui/common/ui/src/test/java/org/richfaces/component/SavedStateTest.java 2011-02-16 23:04:13 UTC (rev 21715)
@@ -0,0 +1,218 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2011, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.component;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+import javax.faces.component.UIForm;
+import javax.faces.component.UIInput;
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.component.IterationStateHolder;
+import org.jboss.test.faces.mock.Mock;
+import org.jboss.test.faces.mock.MockTestRunner;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+(a)RunWith(MockTestRunner.class)
+public class SavedStateTest {
+
+ @Mock
+ private FacesContext facesContext;
+
+ private IterationStateHolder iterationStateHolder;
+
+ private String iterationState;
+
+ @Before
+ public void setUp() throws Exception {
+ iterationStateHolder = new IterationStateHolder() {
+
+ public void setIterationState(Object state) {
+ iterationState = (String) state;
+ }
+
+ public Object getIterationState() {
+ return iterationState;
+ }
+ };
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ iterationStateHolder = null;
+ }
+
+ private void checkDefaultState(SavedState state) {
+
+ assertTrue(state.isValid());
+ assertFalse(state.isLocalValueSet());
+ assertFalse(state.isSubmitted());
+
+ assertNull(state.getIterationState());
+ assertNull(state.getSubmittedValue());
+ assertNull(state.getValue());
+ }
+
+ @Test
+ public void testDefaultValue() throws Exception {
+ SavedState state = new SavedState();
+ checkDefaultState(state);
+
+ SavedState inputState = new SavedState(new UIInput());
+ checkDefaultState(inputState);
+
+ SavedState formState = new SavedState(new UIForm());
+ checkDefaultState(formState);
+
+ SavedState iterationState = new SavedState(iterationStateHolder);
+ checkDefaultState(iterationState);
+ }
+
+ @Test
+ public void testIterationStateHolderConstructor() throws Exception {
+ this.iterationState = "some state";
+ SavedState iterationState = new SavedState(iterationStateHolder);
+
+ assertEquals("some state", iterationState.getIterationState());
+
+ assertFalse(iterationState.isSubmitted());
+ assertTrue(iterationState.isValid());
+ assertNull(iterationState.getSubmittedValue());
+ assertNull(iterationState.getValue());
+ assertFalse(iterationState.isLocalValueSet());
+ }
+
+ @Test
+ public void testIterationStateApply() throws Exception {
+ SavedState iterationState = new SavedState();
+ iterationState.setIterationState("some state");
+ iterationState.apply(iterationStateHolder);
+
+ assertEquals("some state", this.iterationState);
+ }
+
+ @Test
+ public void testFormConstructor() {
+ UIForm form = new UIForm();
+ form.setSubmitted(true);
+
+ SavedState formState = new SavedState(form);
+
+ assertTrue(formState.isSubmitted());
+
+ assertTrue(formState.isValid());
+ assertNull(formState.getSubmittedValue());
+ assertNull(formState.getValue());
+ assertFalse(formState.isLocalValueSet());
+ assertNull(formState.getIterationState());
+ }
+
+ @Test
+ public void testFormApply() {
+ SavedState formState = new SavedState();
+ formState.setSubmitted(true);
+
+ UIForm form = new UIForm();
+ formState.apply(form);
+
+ assertTrue(form.isSubmitted());
+ }
+
+ @Test
+ public void testInputConstructor() {
+ UIInput input = new UIInput();
+
+ input.setValid(false);
+ input.setSubmittedValue("submitted");
+ input.setValue("value");
+ input.setLocalValueSet(true);
+
+ SavedState inputState = new SavedState(input);
+
+ assertFalse(inputState.isValid());
+ assertEquals("submitted", inputState.getSubmittedValue());
+ assertEquals("value", inputState.getValue());
+ assertTrue(inputState.isLocalValueSet());
+
+ assertFalse(inputState.isSubmitted());
+ assertNull(inputState.getIterationState());
+ }
+
+ @Test
+ public void testInputApply() {
+ SavedState state = new SavedState();
+ state.setValid(false);
+ state.setSubmittedValue("submitted");
+ state.setValue("value");
+ state.setLocalValueSet(true);
+
+ UIInput input = new UIInput();
+ state.apply(input);
+
+ assertFalse(input.isValid());
+ assertEquals("submitted", input.getSubmittedValue());
+ assertEquals("value", input.getValue());
+ assertTrue(input.isLocalValueSet());
+ }
+
+ @Test
+ public void testTransient() throws Exception {
+ SavedState defaultState = new SavedState();
+
+ assertTrue(defaultState.isTransient());
+
+ SavedState state = new SavedState();
+ state.setIterationState("something");
+ assertFalse(state.isTransient());
+
+ state = new SavedState();
+ state.setLocalValueSet(true);
+ assertFalse(state.isTransient());
+
+ state = new SavedState();
+ state.setSubmitted(true);
+ assertFalse(state.isTransient());
+
+ state = new SavedState();
+ state.setSubmittedValue("submitted");
+ assertFalse(state.isTransient());
+
+ state = new SavedState();
+ state.setValid(false);
+ assertFalse(state.isTransient());
+
+ state = new SavedState();
+ state.setValue(Integer.MAX_VALUE);
+ assertFalse(state.isTransient());
+ }
+}
15 years, 2 months
JBoss Rich Faces SVN: r21714 - modules/tests/metamer/trunk/ftest/src/test/resources.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2011-02-16 16:38:58 -0500 (Wed, 16 Feb 2011)
New Revision: 21714
Modified:
modules/tests/metamer/trunk/ftest/src/test/resources/testng.xml
Log:
disabled rich:tooltip tests since it causes hang up of Firefox (RF-10544)
Modified: modules/tests/metamer/trunk/ftest/src/test/resources/testng.xml
===================================================================
--- modules/tests/metamer/trunk/ftest/src/test/resources/testng.xml 2011-02-16 21:24:59 UTC (rev 21713)
+++ modules/tests/metamer/trunk/ftest/src/test/resources/testng.xml 2011-02-16 21:38:58 UTC (rev 21714)
@@ -1,12 +1,88 @@
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="seleniumTest">
- <test name="Component Tests">
- <parameter name="templates" value="plain richDataTable1,redDiv richDataTable2,redDiv a4jRepeat1 a4jRepeat2 hDataTable1 hDataTable2 uiRepeat1 uiRepeat2"/>
+ <test name="Core Components">
<packages>
- <package name="org.richfaces.tests.metamer.ftest" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jActionListener" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jAjax" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jAttachQueue" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jCommandButton" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jCommandLink" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jJSFunction" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jLog" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jMediaOutput" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jOutputPanel" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jParam" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jPoll" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jQueue" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jRegion" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jRepeat" />
+ <package name="org.richfaces.tests.metamer.ftest.a4jStatus" />
</packages>
</test>
+
+ <test name="Input Components">
+ <packages>
+ <package name="org.richfaces.tests.metamer.ftest.richAutocomplete" />
+ <package name="org.richfaces.tests.metamer.ftest.richCalendar" />
+ <package name="org.richfaces.tests.metamer.ftest.richInplaceInput" />
+ <package name="org.richfaces.tests.metamer.ftest.richInplaceSelect" />
+ <package name="org.richfaces.tests.metamer.ftest.richInputNumberSlider" />
+ <package name="org.richfaces.tests.metamer.ftest.richInputNumberSpinner" />
+ <package name="org.richfaces.tests.metamer.ftest.richSelect" />
+ </packages>
+ </test>
+
+ <test name="Iteration Components">
+ <packages>
+ <package name="org.richfaces.tests.metamer.ftest.richCollapsibleSubTable" />
+ <package name="org.richfaces.tests.metamer.ftest.richCollapsibleSubTableToggler" />
+ <package name="org.richfaces.tests.metamer.ftest.richColumn" />
+ <package name="org.richfaces.tests.metamer.ftest.richColumnGroup" />
+ <package name="org.richfaces.tests.metamer.ftest.richDataGrid" />
+ <package name="org.richfaces.tests.metamer.ftest.richDataTable" />
+ <package name="org.richfaces.tests.metamer.ftest.richDataScroller" />
+ <package name="org.richfaces.tests.metamer.ftest.richExtendedDataTable" />
+ <package name="org.richfaces.tests.metamer.ftest.richTree" />
+ <package name="org.richfaces.tests.metamer.ftest.richTreeNode" />
+ <package name="org.richfaces.tests.metamer.ftest.richTreeModelAdaptor" />
+ </packages>
+ </test>
+
+ <test name="Miscellaneous Components">
+ <packages>
+ <package name="org.richfaces.tests.metamer.ftest.hCommandButton" />
+ <package name="org.richfaces.tests.metamer.ftest.richComponentControl" />
+ <package name="org.richfaces.tests.metamer.ftest.richDropDownMenu" />
+ <package name="org.richfaces.tests.metamer.ftest.richFunctions" />
+ <package name="org.richfaces.tests.metamer.ftest.richJQuery" />
+ <package name="org.richfaces.tests.metamer.ftest.richMenuGroup" />
+ <package name="org.richfaces.tests.metamer.ftest.richMenuItem" />
+ <package name="org.richfaces.tests.metamer.ftest.richMenuSeparator" />
+ <package name="org.richfaces.tests.metamer.ftest.richToggleControl" />
+ </packages>
+ </test>
+
+ <test name="Output Components">
+ <packages>
+ <package name="org.richfaces.tests.metamer.ftest.richAccordion" />
+ <package name="org.richfaces.tests.metamer.ftest.richAccordionItem" />
+ <package name="org.richfaces.tests.metamer.ftest.richCollapsiblePanel" />
+ <package name="org.richfaces.tests.metamer.ftest.richPanel" />
+ <package name="org.richfaces.tests.metamer.ftest.richPopupPanel" />
+ <package name="org.richfaces.tests.metamer.ftest.richProgressBar" />
+ <package name="org.richfaces.tests.metamer.ftest.richTab" />
+ <package name="org.richfaces.tests.metamer.ftest.richTabPanel" />
+ <package name="org.richfaces.tests.metamer.ftest.richTogglePanel" />
+ <package name="org.richfaces.tests.metamer.ftest.richTogglePanelItem" />
+ <package name="org.richfaces.tests.metamer.ftest.richToolbar" />
+ <package name="org.richfaces.tests.metamer.ftest.richToolbarGroup" />
+ <!-- FIXME temporary disabled RF-10544 <package name="org.richfaces.tests.metamer.ftest.richTooltip" /> -->
+ <package name="org.richfaces.tests.metamer.ftest.richPanelMenu" />
+ <package name="org.richfaces.tests.metamer.ftest.richPanelMenuGroup" />
+ <package name="org.richfaces.tests.metamer.ftest.richPanelMenuItem" />
+ </packages>
+ </test>
</suite>
15 years, 2 months