[richfaces-svn-commits] JBoss Rich Faces SVN: r18851 - in branches/RF-9112: ui/input/ui/src/main/resources/META-INF/resources/org.richfaces and 9 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Fri Aug 20 11:06:53 EDT 2010
Author: jbalunas at redhat.com
Date: 2010-08-20 11:06:52 -0400 (Fri, 20 Aug 2010)
New Revision: 18851
Added:
branches/RF-9112/ui/input/ui/src/test/java/
branches/RF-9112/ui/input/ui/src/test/java/org/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java
branches/RF-9112/ui/input/ui/src/test/resources/
branches/RF-9112/ui/input/ui/src/test/resources/org/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml
Removed:
branches/RF-9112/ui/input/ui/src/test/java/org/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java
branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java
branches/RF-9112/ui/input/ui/src/test/resources/org/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml
branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml
Modified:
branches/RF-9112/
branches/RF-9112/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceInput.js
Log:
Merged revisions 18848-18849 via svnmerge from
https://svn.jboss.org/repos/richfaces/trunk
.......
r18848 | abelevich | 2010-08-20 10:13:52 -0400 (Fri, 20 Aug 2010) | 1 line
fix inplaceInput with showControls='true' scrip behavior
.......
r18849 | abelevich | 2010-08-20 10:14:43 -0400 (Fri, 20 Aug 2010) | 1 line
add test for the inplaceInput
.......
Property changes on: branches/RF-9112
___________________________________________________________________
Name: svnmerge-integrated
- /trunk:1-18847 /branches/RF-9023:1-18690 /branches/RF-9040_build_updated_m2:1-18626
+ /trunk:1-18850 /branches/RF-9023:1-18690 /branches/RF-9040_build_updated_m2:1-18626
Modified: branches/RF-9112/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceInput.js
===================================================================
--- branches/RF-9112/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceInput.js 2010-08-20 14:17:25 UTC (rev 18850)
+++ branches/RF-9112/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceInput.js 2010-08-20 15:06:52 UTC (rev 18851)
@@ -16,10 +16,13 @@
this.initialValue = this.label.text();
this.element.bind(this.editEvent, $.proxy(this.__editHandler, this));
- this.input.bind("change", $.proxy(this.__saveHandler, this));
- this.input.bind("blur", $.proxy(this.__saveHandler, this));
this.input.bind("focus", $.proxy(this.__editHandler, this));
-
+
+ if(!this.showControls) {
+ this.input.bind("change", $.proxy(this.__saveHandler, this));
+ this.input.bind("blur", $.proxy(this.__saveHandler, this));
+ }
+
if(this.showControls) {
this.okbtn = $(document.getElementById(options.okbtn));
this.cancelbtn = $(document.getElementById(options.cancelbtn));
@@ -46,20 +49,21 @@
},
save: function() {
- var inputValue = this.input.val();
- if(inputValue.length > 0) {
- this.label.text(inputValue);
- }
-
- if(inputValue != this.initialValue) {
- this.element.addClass(this.changedCss);
- } else {
- this.element.removeClass(this.changedCss);
- }
-
- if(!this.showControls) {
- this.editContainer.addClass(this.noneCss);
- }
+
+ var inputValue = this.input.val();
+ if(inputValue.length > 0) {
+ this.label.text(inputValue);
+ }
+
+ if(inputValue != this.initialValue) {
+ this.element.addClass(this.changedCss);
+ } else {
+ this.element.removeClass(this.changedCss);
+ }
+
+ if(!this.showControls) {
+ this.editContainer.addClass(this.noneCss);
+ }
},
cancel: function() {
@@ -81,6 +85,7 @@
__saveBtnHandler: function(e) {
this.input.blur();
+ this.save();
this.editContainer.addClass(this.noneCss);
return false;
},
@@ -100,7 +105,6 @@
__saveHandler: function(e) {
this.save();
}
-
}
})());
Copied: branches/RF-9112/ui/input/ui/src/test/java (from rev 18849, trunk/ui/input/ui/src/test/java)
Copied: branches/RF-9112/ui/input/ui/src/test/java/org (from rev 18849, trunk/ui/input/ui/src/test/java/org)
Copied: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces (from rev 18849, trunk/ui/input/ui/src/test/java/org/richfaces)
Copied: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit (from rev 18849, trunk/ui/input/ui/src/test/java/org/richfaces/renderkit)
Deleted: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java
===================================================================
--- trunk/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java 2010-08-20 14:14:43 UTC (rev 18849)
+++ branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java 2010-08-20 15:06:52 UTC (rev 18851)
@@ -1,41 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, 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.renderkit;
-
-
-public class DataBean {
-
- private String value = "Test String";
-
- public DataBean() {
- }
-
- public String getValue() {
- return value;
- }
-
- public void setValue(String value) {
- this.value = value;
- }
-
-}
Copied: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java (from rev 18849, trunk/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java)
===================================================================
--- branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java (rev 0)
+++ branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/DataBean.java 2010-08-20 15:06:52 UTC (rev 18851)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, 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.renderkit;
+
+
+public class DataBean {
+
+ private String value = "Test String";
+
+ public DataBean() {
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+}
Deleted: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java
===================================================================
--- trunk/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java 2010-08-20 14:14:43 UTC (rev 18849)
+++ branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java 2010-08-20 15:06:52 UTC (rev 18851)
@@ -1,222 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, 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.renderkit;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.File;
-import java.util.List;
-
-import org.ajax4jsf.renderkit.RendererUtils.HTML;
-import org.jboss.test.faces.htmlunit.HtmlUnitEnvironment;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-import com.gargoylesoftware.htmlunit.html.DomNode;
-import com.gargoylesoftware.htmlunit.html.DomText;
-import com.gargoylesoftware.htmlunit.html.HtmlElement;
-import com.gargoylesoftware.htmlunit.html.HtmlPage;
-
-/**
- * @author Anton Belevich
- *
- */
-public class InplaceInputRendererTest {
-
- private HtmlUnitEnvironment environment;
-
- @Before
- public void setUp() {
- environment = new HtmlUnitEnvironment();
-
- environment.withWebRoot(new File("src/test/resources"));
- environment.withResource("/WEB-INF/faces-config.xml", "org/richfaces/renderkit/faces-config.xml");
- environment.withResource("/test.xhtml", "org/richfaces/renderkit/rendererTest.xhtml");
- environment.start();
- }
-
- @Test
- public void testRenderDefaultState() throws Exception {
- HtmlPage page = environment.getPage("/test.jsf");
- List<?> nodes = page.getByXPath("//*[@id = 'form:input_default']");
- assertEquals(1, nodes.size());
- HtmlElement span = (HtmlElement) nodes.get(0);
- assertEquals("span", span.getNodeName());
- assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- HtmlElement label = (HtmlElement)span.getFirstChild();
- assertEquals("span", label.getNodeName());
- assertEquals("rf-ii-lbl", label.getAttribute(HTML.CLASS_ATTRIBUTE));
- DomNode text = label.getFirstChild();
- assertEquals(DomNode.TEXT_NODE, text.getNodeType());
-
- HtmlElement edit = (HtmlElement)label.getNextSibling();
- assertEquals("span", edit.getNodeName());
- assertEquals("rf-ii-e-s rf-ii-none", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- HtmlElement input = (HtmlElement)edit.getFirstChild();
- assertEquals("input", input.getNodeName());
- assertEquals("rf-ii-f", input.getAttribute(HTML.CLASS_ATTRIBUTE));
- assertEquals(text.getNodeValue(), input.getAttribute(HTML.VALUE_ATTRIBUTE));
-
- List<?> buttons = page.getByXPath("//*[@id = 'form:input_default:btn']");
- assertEquals(true, buttons.isEmpty());
- }
-
- @Test
- public void testRenderEditState() throws Exception {
-
- HtmlPage page = environment.getPage("/test.jsf");
-
- List<?> nodes = page.getByXPath("//*[@id = 'form:input_edit']");
- assertEquals(1, nodes.size());
- HtmlElement span = (HtmlElement) nodes.get(0);
- assertEquals("span", span.getNodeName());
- assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- HtmlElement label = (HtmlElement)span.getFirstChild();
- assertEquals("span", label.getNodeName());
- assertEquals("rf-ii-lbl", label.getAttribute(HTML.CLASS_ATTRIBUTE));
- DomNode text = label.getFirstChild();
- assertEquals(DomNode.TEXT_NODE, text.getNodeType());
-
- HtmlElement edit = (HtmlElement)label.getNextSibling();
- assertEquals("span", edit.getNodeName());
- assertEquals("rf-ii-e-s", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- HtmlElement input = (HtmlElement)edit.getFirstChild();
- assertEquals("input", input.getNodeName());
- assertEquals("rf-ii-f", input.getAttribute(HTML.CLASS_ATTRIBUTE));
- assertEquals(text.getNodeValue(), input.getAttribute(HTML.VALUE_ATTRIBUTE));
-
- List<?> buttonNodes = page.getByXPath("//*[@id = 'form:input_edit:btn']");
- assertEquals(1, buttonNodes.size());
-
- HtmlElement button = (HtmlElement) buttonNodes.get(0);
- assertEquals("span", button.getNodeName());
-
- List<?> okButtonNodes = page.getByXPath("//*[@id = 'form:input_edit:okbtn']");
- assertEquals(1, okButtonNodes.size());
-
- HtmlElement okButton = (HtmlElement) okButtonNodes.get(0);
- assertEquals("input", okButton.getNodeName());
- assertEquals("rf-ii-btn", okButton.getAttribute(HTML.CLASS_ATTRIBUTE));
- assertEquals("image", okButton.getAttribute(HTML.TYPE_ATTR));
-
- List<?> cancelButtonNodes = page.getByXPath("//*[@id = 'form:input_edit:cancelbtn']");
- assertEquals(1, cancelButtonNodes.size());
-
- HtmlElement cancelButton = (HtmlElement) cancelButtonNodes.get(0);
- assertEquals("input", cancelButton.getNodeName());
- assertEquals("rf-ii-btn", cancelButton.getAttribute(HTML.CLASS_ATTRIBUTE));
- assertEquals("image", cancelButton.getAttribute(HTML.TYPE_ATTR));
-
- }
-
- @Test
- public void testEdit() throws Exception {
- HtmlPage page = environment.getPage("/test.jsf");
- edit(page, "input_default");
- List<?> labelNodes = page.getByXPath("//*[@id = 'form:input_default:label']/text()");
- assertEquals(1, labelNodes.size());
- DomText text = (DomText) labelNodes.get(0);
- assertEquals("Another Test String", text.getTextContent());
-
- List<?>nodes = page.getByXPath("//*[@id = 'form:input_default']");
- assertEquals(1, nodes.size());
- HtmlElement span = (HtmlElement) nodes.get(0);
- assertEquals("rf-ii-d-s rf-ii-c-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- }
-
- private void edit(HtmlPage page, String inplaceInputId) throws Exception {
- List<?> nodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + "']");
- assertEquals(1, nodes.size());
- HtmlElement span = (HtmlElement) nodes.get(0);
- span.click();
-
- List<?> editNodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + ":edit']");
- assertEquals(1, editNodes.size());
- HtmlElement edit = (HtmlElement) editNodes.get(0);
- assertEquals("rf-ii-e-s", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- List<?> inputNodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + ":input']");
- assertEquals(1, inputNodes.size());
- HtmlElement input = (HtmlElement) inputNodes.get(0);
- input.setAttribute(HTML.VALUE_ATTRIBUTE, "");
- input.type("Another Test String");
-
- List<?> panelNodes = page.getByXPath("//*[@id = 'form:panel']");
- assertEquals(1, panelNodes.size());
- HtmlElement panel = (HtmlElement) panelNodes.get(0);
- panel.click();
- }
-
- @Test
- public void testEditWithControls() throws Exception {
- HtmlPage page = environment.getPage("/test.jsf");
-
- edit(page, "input_controls");
-
- List<?> cancelNodes = page.getByXPath("//*[@id = 'form:input_controls:cancelbtn']");
- assertEquals(1, cancelNodes.size());
- HtmlElement cancel = (HtmlElement) cancelNodes.get(0);
-
- cancel.mouseDown();
-
- List<?> labelNodes = page.getByXPath("//*[@id = 'form:input_controls:label']/text()");
- assertEquals(1, labelNodes.size());
- DomText text = (DomText) labelNodes.get(0);
- assertEquals("Test String", text.getTextContent());
-
- List<?> nodes = page.getByXPath("//*[@id = 'form:input_controls']");
- assertEquals(1, nodes.size());
- HtmlElement span = (HtmlElement) nodes.get(0);
- assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
-
- edit(page, "input_controls");
-
- List<?> okNodes = page.getByXPath("//*[@id = 'form:input_controls:okbtn']");
- assertEquals(1, okNodes.size());
- HtmlElement ok = (HtmlElement) okNodes.get(0);
-
- ok.mouseDown();
-
- labelNodes = page.getByXPath("//*[@id = 'form:input_controls:label']/text()");
- assertEquals(1, labelNodes.size());
- text = (DomText) labelNodes.get(0);
- assertEquals("Another Test String", text.getTextContent());
-
- nodes = page.getByXPath("//*[@id = 'form:input_controls']");
- assertEquals(1, nodes.size());
- span = (HtmlElement) nodes.get(0);
- assertEquals("rf-ii-d-s rf-ii-c-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
- }
-
- @After
- public void tearDown() {
- environment.release();
- environment = null;
- }
-}
Copied: branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java (from rev 18849, trunk/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java)
===================================================================
--- branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java (rev 0)
+++ branches/RF-9112/ui/input/ui/src/test/java/org/richfaces/renderkit/InplaceInputRendererTest.java 2010-08-20 15:06:52 UTC (rev 18851)
@@ -0,0 +1,222 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, 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.renderkit;
+
+import static org.junit.Assert.assertEquals;
+
+import java.io.File;
+import java.util.List;
+
+import org.ajax4jsf.renderkit.RendererUtils.HTML;
+import org.jboss.test.faces.htmlunit.HtmlUnitEnvironment;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+import com.gargoylesoftware.htmlunit.html.DomNode;
+import com.gargoylesoftware.htmlunit.html.DomText;
+import com.gargoylesoftware.htmlunit.html.HtmlElement;
+import com.gargoylesoftware.htmlunit.html.HtmlPage;
+
+/**
+ * @author Anton Belevich
+ *
+ */
+public class InplaceInputRendererTest {
+
+ private HtmlUnitEnvironment environment;
+
+ @Before
+ public void setUp() {
+ environment = new HtmlUnitEnvironment();
+
+ environment.withWebRoot(new File("src/test/resources"));
+ environment.withResource("/WEB-INF/faces-config.xml", "org/richfaces/renderkit/faces-config.xml");
+ environment.withResource("/test.xhtml", "org/richfaces/renderkit/rendererTest.xhtml");
+ environment.start();
+ }
+
+ @Test
+ public void testRenderDefaultState() throws Exception {
+ HtmlPage page = environment.getPage("/test.jsf");
+ List<?> nodes = page.getByXPath("//*[@id = 'form:input_default']");
+ assertEquals(1, nodes.size());
+ HtmlElement span = (HtmlElement) nodes.get(0);
+ assertEquals("span", span.getNodeName());
+ assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ HtmlElement label = (HtmlElement)span.getFirstChild();
+ assertEquals("span", label.getNodeName());
+ assertEquals("rf-ii-lbl", label.getAttribute(HTML.CLASS_ATTRIBUTE));
+ DomNode text = label.getFirstChild();
+ assertEquals(DomNode.TEXT_NODE, text.getNodeType());
+
+ HtmlElement edit = (HtmlElement)label.getNextSibling();
+ assertEquals("span", edit.getNodeName());
+ assertEquals("rf-ii-e-s rf-ii-none", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ HtmlElement input = (HtmlElement)edit.getFirstChild();
+ assertEquals("input", input.getNodeName());
+ assertEquals("rf-ii-f", input.getAttribute(HTML.CLASS_ATTRIBUTE));
+ assertEquals(text.getNodeValue(), input.getAttribute(HTML.VALUE_ATTRIBUTE));
+
+ List<?> buttons = page.getByXPath("//*[@id = 'form:input_default:btn']");
+ assertEquals(true, buttons.isEmpty());
+ }
+
+ @Test
+ public void testRenderEditState() throws Exception {
+
+ HtmlPage page = environment.getPage("/test.jsf");
+
+ List<?> nodes = page.getByXPath("//*[@id = 'form:input_edit']");
+ assertEquals(1, nodes.size());
+ HtmlElement span = (HtmlElement) nodes.get(0);
+ assertEquals("span", span.getNodeName());
+ assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ HtmlElement label = (HtmlElement)span.getFirstChild();
+ assertEquals("span", label.getNodeName());
+ assertEquals("rf-ii-lbl", label.getAttribute(HTML.CLASS_ATTRIBUTE));
+ DomNode text = label.getFirstChild();
+ assertEquals(DomNode.TEXT_NODE, text.getNodeType());
+
+ HtmlElement edit = (HtmlElement)label.getNextSibling();
+ assertEquals("span", edit.getNodeName());
+ assertEquals("rf-ii-e-s", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ HtmlElement input = (HtmlElement)edit.getFirstChild();
+ assertEquals("input", input.getNodeName());
+ assertEquals("rf-ii-f", input.getAttribute(HTML.CLASS_ATTRIBUTE));
+ assertEquals(text.getNodeValue(), input.getAttribute(HTML.VALUE_ATTRIBUTE));
+
+ List<?> buttonNodes = page.getByXPath("//*[@id = 'form:input_edit:btn']");
+ assertEquals(1, buttonNodes.size());
+
+ HtmlElement button = (HtmlElement) buttonNodes.get(0);
+ assertEquals("span", button.getNodeName());
+
+ List<?> okButtonNodes = page.getByXPath("//*[@id = 'form:input_edit:okbtn']");
+ assertEquals(1, okButtonNodes.size());
+
+ HtmlElement okButton = (HtmlElement) okButtonNodes.get(0);
+ assertEquals("input", okButton.getNodeName());
+ assertEquals("rf-ii-btn", okButton.getAttribute(HTML.CLASS_ATTRIBUTE));
+ assertEquals("image", okButton.getAttribute(HTML.TYPE_ATTR));
+
+ List<?> cancelButtonNodes = page.getByXPath("//*[@id = 'form:input_edit:cancelbtn']");
+ assertEquals(1, cancelButtonNodes.size());
+
+ HtmlElement cancelButton = (HtmlElement) cancelButtonNodes.get(0);
+ assertEquals("input", cancelButton.getNodeName());
+ assertEquals("rf-ii-btn", cancelButton.getAttribute(HTML.CLASS_ATTRIBUTE));
+ assertEquals("image", cancelButton.getAttribute(HTML.TYPE_ATTR));
+
+ }
+
+ @Test
+ public void testEdit() throws Exception {
+ HtmlPage page = environment.getPage("/test.jsf");
+ edit(page, "input_default");
+ List<?> labelNodes = page.getByXPath("//*[@id = 'form:input_default:label']/text()");
+ assertEquals(1, labelNodes.size());
+ DomText text = (DomText) labelNodes.get(0);
+ assertEquals("Another Test String", text.getTextContent());
+
+ List<?>nodes = page.getByXPath("//*[@id = 'form:input_default']");
+ assertEquals(1, nodes.size());
+ HtmlElement span = (HtmlElement) nodes.get(0);
+ assertEquals("rf-ii-d-s rf-ii-c-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ }
+
+ private void edit(HtmlPage page, String inplaceInputId) throws Exception {
+ List<?> nodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + "']");
+ assertEquals(1, nodes.size());
+ HtmlElement span = (HtmlElement) nodes.get(0);
+ span.click();
+
+ List<?> editNodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + ":edit']");
+ assertEquals(1, editNodes.size());
+ HtmlElement edit = (HtmlElement) editNodes.get(0);
+ assertEquals("rf-ii-e-s", edit.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ List<?> inputNodes = page.getByXPath("//*[@id = 'form:" + inplaceInputId + ":input']");
+ assertEquals(1, inputNodes.size());
+ HtmlElement input = (HtmlElement) inputNodes.get(0);
+ input.setAttribute(HTML.VALUE_ATTRIBUTE, "");
+ input.type("Another Test String");
+
+ List<?> panelNodes = page.getByXPath("//*[@id = 'form:panel']");
+ assertEquals(1, panelNodes.size());
+ HtmlElement panel = (HtmlElement) panelNodes.get(0);
+ panel.click();
+ }
+
+ @Test
+ public void testEditWithControls() throws Exception {
+ HtmlPage page = environment.getPage("/test.jsf");
+
+ edit(page, "input_controls");
+
+ List<?> cancelNodes = page.getByXPath("//*[@id = 'form:input_controls:cancelbtn']");
+ assertEquals(1, cancelNodes.size());
+ HtmlElement cancel = (HtmlElement) cancelNodes.get(0);
+
+ cancel.mouseDown();
+
+ List<?> labelNodes = page.getByXPath("//*[@id = 'form:input_controls:label']/text()");
+ assertEquals(1, labelNodes.size());
+ DomText text = (DomText) labelNodes.get(0);
+ assertEquals("Test String", text.getTextContent());
+
+ List<?> nodes = page.getByXPath("//*[@id = 'form:input_controls']");
+ assertEquals(1, nodes.size());
+ HtmlElement span = (HtmlElement) nodes.get(0);
+ assertEquals("rf-ii-d-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
+
+ edit(page, "input_controls");
+
+ List<?> okNodes = page.getByXPath("//*[@id = 'form:input_controls:okbtn']");
+ assertEquals(1, okNodes.size());
+ HtmlElement ok = (HtmlElement) okNodes.get(0);
+
+ ok.mouseDown();
+
+ labelNodes = page.getByXPath("//*[@id = 'form:input_controls:label']/text()");
+ assertEquals(1, labelNodes.size());
+ text = (DomText) labelNodes.get(0);
+ assertEquals("Another Test String", text.getTextContent());
+
+ nodes = page.getByXPath("//*[@id = 'form:input_controls']");
+ assertEquals(1, nodes.size());
+ span = (HtmlElement) nodes.get(0);
+ assertEquals("rf-ii-d-s rf-ii-c-s", span.getAttribute(HTML.CLASS_ATTRIBUTE));
+ }
+
+ @After
+ public void tearDown() {
+ environment.release();
+ environment = null;
+ }
+}
Copied: branches/RF-9112/ui/input/ui/src/test/resources (from rev 18849, trunk/ui/input/ui/src/test/resources)
Copied: branches/RF-9112/ui/input/ui/src/test/resources/org (from rev 18849, trunk/ui/input/ui/src/test/resources/org)
Copied: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces (from rev 18849, trunk/ui/input/ui/src/test/resources/org/richfaces)
Copied: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit (from rev 18849, trunk/ui/input/ui/src/test/resources/org/richfaces/renderkit)
Deleted: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml
===================================================================
--- trunk/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml 2010-08-20 14:14:43 UTC (rev 18849)
+++ branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml 2010-08-20 15:06:52 UTC (rev 18851)
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
- version="2.0">
-
- <managed-bean>
- <managed-bean-name>dataBean</managed-bean-name>
- <managed-bean-class>org.richfaces.renderkit.DataBean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
-</faces-config>
\ No newline at end of file
Copied: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml (from rev 18849, trunk/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml)
===================================================================
--- branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml (rev 0)
+++ branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/faces-config.xml 2010-08-20 15:06:52 UTC (rev 18851)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+
+ <managed-bean>
+ <managed-bean-name>dataBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.renderkit.DataBean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
+
+</faces-config>
\ No newline at end of file
Deleted: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml
===================================================================
--- trunk/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml 2010-08-20 14:14:43 UTC (rev 18849)
+++ branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml 2010-08-20 15:06:52 UTC (rev 18851)
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:in="http://richfaces.org/input">
-<f:view contentType="text/html" />
-
-<h:head>
- <title>Richfaces InplaceInput</title>
-</h:head>
-
-<h:body>
- <h:form id="form">
- <in:inplaceInput id="input_default" value="#{dataBean.value}"/>
-
- <in:inplaceInput id="input_controls" showControls="true" value="#{dataBean.value}"/>
-
- <in:inplaceInput id="input_edit" state="edit" showControls="true" value="#{dataBean.value}"/>
-
- <h:panelGroup id="panel">
- <!-- click here for blur -->
- </h:panelGroup>
- </h:form>
-</h:body>
-</html>
Copied: branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml (from rev 18849, trunk/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml)
===================================================================
--- branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml (rev 0)
+++ branches/RF-9112/ui/input/ui/src/test/resources/org/richfaces/renderkit/rendererTest.xhtml 2010-08-20 15:06:52 UTC (rev 18851)
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:in="http://richfaces.org/input">
+<f:view contentType="text/html" />
+
+<h:head>
+ <title>Richfaces InplaceInput</title>
+</h:head>
+
+<h:body>
+ <h:form id="form">
+ <in:inplaceInput id="input_default" value="#{dataBean.value}"/>
+
+ <in:inplaceInput id="input_controls" showControls="true" value="#{dataBean.value}"/>
+
+ <in:inplaceInput id="input_edit" state="edit" showControls="true" value="#{dataBean.value}"/>
+
+ <h:panelGroup id="panel">
+ <!-- click here for blur -->
+ </h:panelGroup>
+ </h:form>
+</h:body>
+</html>
More information about the richfaces-svn-commits
mailing list