@@ -68,8 +68,11 @@ def run node
68
68
return if keys . empty?
69
69
70
70
obj = { }
71
- obj . merge! ( { desc : node [ 'name' ] } ) if keys . include? ( 'name' ) && !node [ 'name' ] . empty?
71
+ # name is id
72
+ obj . merge! ( { id : node [ 'name' ] } ) if keys . include? ( 'name' ) && !node [ 'name' ] . empty?
72
73
obj . merge! ( { text : node [ 'value' ] } ) if keys . include? ( 'value' ) && !node [ 'value' ] . empty?
74
+ # label is name
75
+ obj . merge! ( { name : node [ 'label' ] } ) if keys . include? ( 'label' ) && !node [ 'label' ] . empty?
73
76
obj . merge! ( { class : node [ 'type' ] } ) if keys . include? ( 'type' ) && !obj . empty?
74
77
75
78
r . push obj if !obj . empty?
@@ -86,15 +89,26 @@ def run node
86
89
87
90
out = ''
88
91
results . each { |e |
92
+ no_text = e [ :text ] . nil?
93
+ no_name = e [ :name ] . nil? || e [ :name ] == 'null'
94
+
95
+ # Ignore elements with id only.
96
+ next if no_text && no_name
97
+
89
98
out += e [ :class ] . split ( '.' ) . last + "\n "
90
99
100
+ # name is id when using selendroid.
101
+ # remove id/ prefix
102
+ e [ :id ] . sub! ( /^id\/ / , '' ) if e [ :id ]
103
+
91
104
out += " class: #{ e [ :class ] } \n "
92
- if e [ :text ] == e [ :desc ]
93
- out += " text, name: #{ e [ :text ] } \n " unless e [ :text ] . nil?
94
- else
95
- out += " text: #{ e [ :text ] } \n " unless e [ :text ] . nil?
96
- out += " name: #{ e [ :desc ] } \n " unless e [ :desc ] . nil?
97
- end
105
+ # id('back_button').click
106
+ out += " id: #{ e [ :id ] } \n " unless e [ :id ] . nil?
107
+ # find_element(:link_text, 'text')
108
+ out += " text: #{ e [ :text ] } \n " unless no_text
109
+ # label is name. default is 'null'
110
+ # find_element(:link_text, 'Facebook')
111
+ out += " name: #{ e [ :name ] } \n " unless no_name
98
112
}
99
113
out
100
114
end
0 commit comments