pferraro    2005/08/02 09:42:49

  Modified:    framework/src/java/org/apache/tapestry/form Button.java
                        Button.jwc
  Added:       framework/src/test/org/apache/tapestry/form TestButton.java
  Log:
  Fixes Tapestry-520 and 521
  Deprecated label parameter
  
  Revision  Changes    Path
  1.1                  
jakarta-tapestry/framework/src/test/org/apache/tapestry/form/TestButton.java
  
  Index: TestButton.java
  ===================================================================
  // Copyright 2005 The Apache Software Foundation
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //     http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  
  package org.apache.tapestry.form;
  
  import org.apache.tapestry.IBinding;
  import org.apache.tapestry.IMarkupWriter;
  import org.apache.tapestry.IRequestCycle;
  import org.apache.tapestry.components.BaseComponentTestCase;
  import org.apache.tapestry.spec.ComponentSpecification;
  
  public class TestButton extends BaseComponentTestCase
  {
      public void testRender()
      {
          Button b = (Button) newInstance(Button.class, new Object[]
          { "name", "assignedName" });
  
          IMarkupWriter writer = newBufferWriter();
          IRequestCycle cycle = newCycle();
  
          replayControls();
  
          b.renderFormComponent(writer, cycle);
  
          verifyControls();
  
          assertBuffer("<button type=\"button\" 
name=\"assignedName\"></button>");
      }
  
      public void testRenderLabel()
      {
          Button b = (Button) newInstance(Button.class, new Object[]
          { "name", "assignedName", "label", "Label" });
  
          IMarkupWriter writer = newBufferWriter();
          IRequestCycle cycle = newCycle();
  
          replayControls();
  
          b.renderFormComponent(writer, cycle);
  
          verifyControls();
  
          assertBuffer("<button type=\"button\" 
name=\"assignedName\">Label</button>");
      }
  
      public void testRenderInformalParameters()
      {
          Button b = (Button) newInstance(Button.class, new Object[]
          { "name", "assignedName", "specification", new 
ComponentSpecification() });
  
          IMarkupWriter writer = newBufferWriter();
          IRequestCycle cycle = newCycle();
  
          IBinding binding = newBinding("informal-value");
  
          b.setBinding("informal", binding);
  
          replayControls();
  
          b.renderFormComponent(writer, cycle);
  
          verifyControls();
  
          assertBuffer("<button type=\"button\" name=\"assignedName\" 
informal=\"informal-value\"></button>");
      }
  
      public void testRenderWithId()
      {
          Button b = (Button) newInstance(Button.class, new Object[]
          { "idParameter", "foo", "name", "assignedName" });
  
          IMarkupWriter writer = newBufferWriter();
          IRequestCycle cycle = newCycleGetUniqueId("foo", "foo$unique");
  
          replayControls();
  
          b.renderFormComponent(writer, cycle);
  
          verifyControls();
  
          assertBuffer("<button type=\"button\" name=\"assignedName\" 
id=\"foo$unique\"></button>");
      }
  
      public void testSubmit()
      {
          Button b = (Button) newInstance(Button.class);
  
          IMarkupWriter writer = newWriter();
          IRequestCycle cycle = newCycle();
  
          replayControls();
  
          b.rewindFormComponent(writer, cycle);
  
          verifyControls();
      }
  }
  
  
  
  1.7       +34 -2     
jakarta-tapestry/framework/src/java/org/apache/tapestry/form/Button.java
  
  Index: Button.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/form/Button.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Button.java       23 Jun 2005 14:13:24 -0000      1.6
  +++ Button.java       2 Aug 2005 16:42:49 -0000       1.7
  @@ -36,7 +36,7 @@
        */
       protected void renderFormComponent(IMarkupWriter writer, IRequestCycle 
cycle)
       {
  -        writer.beginEmpty("button");
  +        writer.begin("button");
           writer.attribute("type", "button");
           writer.attribute("name", getName());
   
  @@ -56,7 +56,39 @@
           else
               renderBody(writer, cycle);
   
  -        writer.closeTag();
  +        writer.end();
  +    }
  +
  +    /**
  +     * @see 
org.apache.tapestry.form.AbstractFormComponent#rewindFormComponent(org.apache.tapestry.IMarkupWriter,
 org.apache.tapestry.IRequestCycle)
  +     */
  +    protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle 
cycle)
  +    {
  +        // Do nothing
  +    }
  +
  +    /**
  +     * @see org.apache.tapestry.form.IFormComponent#getClientId()
  +     */
  +    public String getClientId()
  +    {
  +        return null;
  +    }
  +
  +    /**
  +     * @see org.apache.tapestry.form.IFormComponent#getDisplayName()
  +     */
  +    public String getDisplayName()
  +    {
  +        return null;
  +    }
  +
  +    /**
  +     * @see org.apache.tapestry.form.IFormComponent#isDisabled()
  +     */
  +    public boolean isDisabled()
  +    {
  +        return false;
       }
   
       public abstract String getLabel();
  
  
  
  1.8       +1 -1      
jakarta-tapestry/framework/src/java/org/apache/tapestry/form/Button.jwc
  
  Index: Button.jwc
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/form/Button.jwc,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Button.jwc        28 Jul 2005 19:10:39 -0000      1.7
  +++ Button.jwc        2 Aug 2005 16:42:49 -0000       1.8
  @@ -25,7 +25,7 @@
     Creates a labeled button within a form.
     </description>
   
  -  <parameter name="label"/>
  +  <parameter name="label" deprecated="true"/>
     <parameter name="disabled"/>
     <parameter name="id" property="idParameter" default-value="id"/>
                  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to