• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hazendaz / httpunit / 656

06 Dec 2025 09:11PM UTC coverage: 80.452% (+0.02%) from 80.435%
656

push

github

hazendaz
[maven-release-plugin] prepare for next development iteration

3213 of 4105 branches covered (78.27%)

Branch coverage included in aggregate %.

8245 of 10137 relevant lines covered (81.34%)

0.81 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

94.29
/src/main/java/com/meterware/httpunit/HTMLElementScriptable.java
1
/*
2
 * MIT License
3
 *
4
 * Copyright 2011-2025 Russell Gold
5
 *
6
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
7
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
8
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
9
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10
 *
11
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions
12
 * of the Software.
13
 *
14
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
15
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
17
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
18
 * DEALINGS IN THE SOFTWARE.
19
 */
20
package com.meterware.httpunit;
21

22
import com.meterware.httpunit.scripting.DocumentElement;
23
import com.meterware.httpunit.scripting.ScriptableDelegate;
24

25
/**
26
 * The Class HTMLElementScriptable.
27
 */
28
class HTMLElementScriptable extends ScriptableDelegate implements DocumentElement {
29

30
    /** the element that I am scripting for. */
31
    private HTMLElement _element;
32

33
    /**
34
     * Gets the element.
35
     *
36
     * @return the _element
37
     */
38
    protected HTMLElement get_element() {
39
        return _element;
1✔
40
    }
41

42
    /**
43
     * get the property with the given name
44
     *
45
     * @param propertyName
46
     *            - the name of the property to get
47
     */
48
    @Override
49
    public Object get(String propertyName) {
50
        if (propertyName.equals("nodeName") || propertyName.equals("tagName")) {
1✔
51
            return _element.getTagName();
1✔
52
        }
53
        if (propertyName.equalsIgnoreCase("title")) {
1✔
54
            return _element.getTitle();
1✔
55
        }
56
        if (_element.isSupportedAttribute(propertyName)) {
1✔
57
            return _element.getAttribute(propertyName);
1✔
58
        }
59
        return super.get(propertyName);
1✔
60
    }
61

62
    /**
63
     * get the content of the given attribute.
64
     *
65
     * @param attributeName
66
     *            the attribute name
67
     *
68
     * @return the attribute as a string
69
     */
70
    public String getAttribute(String attributeName) {
71
        return _element.getAttribute(attributeName);
1✔
72
    }
73

74
    /**
75
     * set the attribute with the given attribute name to the given value.
76
     *
77
     * @param attributeName
78
     *            the attribute name
79
     * @param value
80
     *            the value
81
     */
82
    public void setAttribute(String attributeName, Object value) {
83
        _element.setAttribute(attributeName, value);
1✔
84
    }
1✔
85

86
    /**
87
     * remove the given attribute.
88
     *
89
     * @param attributeName
90
     *            the attribute name
91
     */
92
    public void removeAttribute(String attributeName) {
93
        _element.removeAttribute(attributeName);
×
94
    }
×
95

96
    @Override
97
    public boolean handleEvent(String eventName) {
98
        // check whether onclick is activated
99
        if (eventName.equalsIgnoreCase("onclick")) {
1✔
100
            handleEvent("onmousedown");
1✔
101
        }
102
        String eventScript = getAttribute(eventName);
1✔
103
        boolean result = doEventScript(eventScript);
1✔
104
        if (eventName.equalsIgnoreCase("onclick")) {
1✔
105
            handleEvent("onmouseup");
1✔
106
        }
107
        return result;
1✔
108
    }
109

110
    /**
111
     * construct me from a given element.
112
     *
113
     * @param element
114
     *            the element
115
     */
116
    public HTMLElementScriptable(HTMLElement element) {
1✔
117
        _element = element;
1✔
118
    }
1✔
119
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc