Class: Element
- Inherits:
-
Object
- Object
- Element
- Defined in:
- lib/adb_driver/element.rb
Defined Under Namespace
Instance Method Summary collapse
- #center ⇒ Object
- #checked? ⇒ Boolean
- #class_name ⇒ Object
- #click ⇒ Object
- #content_desc ⇒ Object
- #height ⇒ Object
-
#initialize(xml_representation) ⇒ Element
constructor
A new instance of Element.
- #long_click ⇒ Object
- #lower_right ⇒ Object
- #send_keys(text) ⇒ Object
- #size ⇒ Object
- #text ⇒ Object
- #top_left ⇒ Object (also: #location)
- #width ⇒ Object
Constructor Details
#initialize(xml_representation) ⇒ Element
Returns a new instance of Element.
5 6 7 |
# File 'lib/adb_driver/element.rb', line 5 def initialize(xml_representation) @xml_representation = xml_representation end |
Instance Method Details
#center ⇒ Object
54 55 56 |
# File 'lib/adb_driver/element.rb', line 54 def center Point.new(top_left.x + width / 2, top_left.y + height / 2) end |
#checked? ⇒ Boolean
29 30 31 |
# File 'lib/adb_driver/element.rb', line 29 def checked? @xml_representation.attributes['checked'] == 'true' end |
#class_name ⇒ Object
62 63 64 |
# File 'lib/adb_driver/element.rb', line 62 def class_name @xml_representation.attributes['class'] end |
#click ⇒ Object
9 10 11 |
# File 'lib/adb_driver/element.rb', line 9 def click `adb shell input tap #{center.x} #{center.y}` end |
#content_desc ⇒ Object
33 34 35 |
# File 'lib/adb_driver/element.rb', line 33 def content_desc @xml_representation.attributes['content-desc'] end |
#height ⇒ Object
50 51 52 |
# File 'lib/adb_driver/element.rb', line 50 def height lower_right.y - top_left.y end |
#long_click ⇒ Object
13 14 15 |
# File 'lib/adb_driver/element.rb', line 13 def long_click `adb shell input swipe #{center.x} #{center.y} #{center.x} #{center.y} 800` end |
#lower_right ⇒ Object
42 43 44 |
# File 'lib/adb_driver/element.rb', line 42 def lower_right Point.new(coordinates[2], coordinates[3]) end |
#send_keys(text) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/adb_driver/element.rb', line 17 def send_keys(text) click sleep 2 text.scan(/.{1,10}/).each do |part| `adb shell "input text '#{part}'"` end end |
#size ⇒ Object
58 59 60 |
# File 'lib/adb_driver/element.rb', line 58 def size Size.new(width, height) end |
#text ⇒ Object
25 26 27 |
# File 'lib/adb_driver/element.rb', line 25 def text @xml_representation.attributes['text'] end |
#top_left ⇒ Object Also known as: location
37 38 39 |
# File 'lib/adb_driver/element.rb', line 37 def top_left Point.new(coordinates[0], coordinates[1]) end |
#width ⇒ Object
46 47 48 |
# File 'lib/adb_driver/element.rb', line 46 def width lower_right.x - top_left.x end |