View Javadoc

1   /*
2       Jameleon Watij plug-in - A plug-in that uses Watij (http://www.watij.com/) to drive web sites
3       Copyright (C) 2008 Christian W. Hargraves (engrean@hotmail.com)
4   
5       This program is free software; you can redistribute it and/or modify
6       it under the terms of the GNU General Public License as published by
7       the Free Software Foundation; either version 2 of the License, or
8       (at your option) any later version.
9   
10      This program is distributed in the hope that it will be useful,
11      but WITHOUT ANY WARRANTY; without even the implied warranty of
12      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13      GNU General Public License for more details.
14  
15      You should have received a copy of the GNU General Public License
16      along with this program; if not, write to the Free Software
17      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  
19  */
20  package net.sf.jameleon.plugin.watij.tags;
21  
22  import watij.elements.HtmlElement;
23  import watij.finders.Symbol;
24  
25  /***
26   * Gets a checkbox on the page and stores in the context.
27   * 
28   * An example might be to get a checkbox button via its name:
29   * 
30   * <pre><source>
31   * &lt;testcase xmlns="jelly:jameleon" xmlns:j="jelly:core"&gt;
32   *     &lt;watij-session baseUrl="http://some.url/some/path" beginSession="true"&gt;
33   *         &lt;watij-checkbox
34   *             functionId="Gets a checkbox vi its name"
35   *             how="name"
36   *             what="checkboxName"
37   *             contextVar="watijCheckbox"/>
38   *     &lt;/watij-session&gt;
39   * &lt;/testcase&gt;
40   * </source></pre>
41   * 
42   * Maybe there are several checkboxes buttons with the same name:
43   * 
44   * <pre><source>
45   * &lt;testcase xmlns="jelly:jameleon" xmlns:j="jelly:core"&gt;
46   *     &lt;watij-session baseUrl="http://some.url/some/path" beginSession="true"&gt;
47   *         &lt;watij-checkbox
48   *             functionId="Gets a checkbox via its name and value"
49   *             how="name"
50   *             what="checkName"
51   *             value="val2"
52   *             contextVar="checkbox2"/>
53   *     &lt;/watij-session&gt;
54   * &lt;/testcase&gt;
55   * </source></pre>
56   * 
57   * 
58   * See the javadocs on watij's {@link  watij.finders.SymbolFactory SymbolFactory} for a complete list of supported symbols.
59   * @jameleon.function name="watij-checkbox" type="action"
60   */
61  public class WatijCheckboxTag extends WatijRadioTag {
62  
63      public HtmlElement getHtmlElement(Symbol how, String what) throws Exception{
64          HtmlElement checkbox = null;
65          if (value != null) {
66              checkbox = ie().checkbox(how, what, value);
67          }else{
68              checkbox = ie().checkbox(how, what);
69          }
70          return checkbox;
71      }
72  
73      public String getTagName(){
74          return "Checkbox";
75      }
76  
77  }