[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