Author: lfryc(a)redhat.com
Date: 2010-10-28 12:02:47 -0400 (Thu, 28 Oct 2010)
New Revision: 19736
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/AbstractComponentAttributes.java
Log:
added support for enumeration based attributes
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/AbstractComponentAttributes.java
===================================================================
---
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/AbstractComponentAttributes.java 2010-10-28
16:02:09 UTC (rev 19735)
+++
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/AbstractComponentAttributes.java 2010-10-28
16:02:47 UTC (rev 19736)
@@ -21,6 +21,8 @@
*******************************************************************************/
package org.richfaces.tests.metamer.ftest;
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.WordUtils;
import org.jboss.test.selenium.dom.Event;
import org.jboss.test.selenium.framework.AjaxSelenium;
import org.jboss.test.selenium.framework.AjaxSeleniumProxy;
@@ -44,7 +46,7 @@
protected AjaxSelenium selenium = AjaxSeleniumProxy.getInstance();
LocatorReference<ExtendedLocator<JQueryLocator>> root = new
LocatorReference<ExtendedLocator<JQueryLocator>>(
- pjq(""));
+ pjq(""));
ReferencedLocator<JQueryLocator> propertyLocator = referenceInferred(root,
"input[id*={0}Input]{1}");
public AbstractComponentAttributes() {
@@ -73,15 +75,24 @@
if (value == null) {
value = "";
}
+
String valueAsString = value.toString();
+ if (value.getClass().isEnum()) {
+ valueAsString = valueAsString.toLowerCase();
+ valueAsString = WordUtils.capitalizeFully(valueAsString, new char[] {
'_' });
+ valueAsString = valueAsString.replace("_", "");
+ valueAsString = StringUtils.uncapitalize(valueAsString);
+ }
+
if ("text".equals(inputType)) {
applyText(locator, valueAsString);
} else if ("checkbox".equals(inputType)) {
boolean checked = Boolean.valueOf(valueAsString);
applyCheckbox(locator, checked);
} else if ("radio".equals(inputType)) {
- locator = propertyLocator.format(propertyName, "[value=" +
("".equals(value) ? "null" : value) + "]");
+ locator = propertyLocator.format(propertyName, "[value="
+ + ("".equals(valueAsString) ? "null" : valueAsString)
+ "]");
guardHttp(selenium).click(locator);
}
}
Show replies by date