1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package net.sf.jameleon.plugin.htmlunit.tags;
20
21 import net.sf.jameleon.plugin.htmlunit.HtmlUnitFunctionTag;
22
23 /***
24 * A tag which clicks on an HTML element.
25 * <br/>
26 * To use XPath to click on a link defined as <a href="/some/url/index.html">some link</a>:
27 * <pre><source>
28 * <htmlunit-click
29 * functionId="Click on a the 'some link' link"
30 * xpath="//a[text()='some link']"/>
31 * </source></pre>
32 * To use XPath to click on a 'Search' button in the 3rd form:
33 * <pre><source>
34 * <htmlunit-click
35 * functionId="Click on a the 'some link' link"
36 * xpath="//form[2]/input[@type='submit' and value='Search']"/>
37 * </source></pre>
38 * @jameleon.function name="htmlunit-click" type="action"
39 */
40 public class HtmlUnitClickTag extends HtmlUnitFunctionTag{
41
42 /***
43 * The xpath to locate the element to click on
44 * @jameleon.attribute
45 */
46 protected String xpath;
47
48 public void testBlock(){
49 boolean actionOccured = false;
50 if (xpath != null) {
51 clickElementWithXPath(xpath);
52 actionOccured = true;
53 }
54 assertTrue("Nothing happened in the "+this.getElementName()+" tag", actionOccured);
55 }
56
57 }