Skip to content

Commit f8042f1

Browse files
Fix page Selendroid
Fix #45
1 parent f9866e0 commit f8042f1

File tree

1 file changed

+21
-7
lines changed

1 file changed

+21
-7
lines changed

lib/appium_lib/android/helper.rb

+21-7
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,11 @@ def run node
6868
return if keys.empty?
6969

7070
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?
7273
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?
7376
obj.merge!( { class: node['type'] } ) if keys.include?('type') && !obj.empty?
7477

7578
r.push obj if !obj.empty?
@@ -86,15 +89,26 @@ def run node
8689

8790
out = ''
8891
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+
8998
out += e[:class].split('.').last + "\n"
9099

100+
# name is id when using selendroid.
101+
# remove id/ prefix
102+
e[:id].sub!(/^id\//, '') if e[:id]
103+
91104
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
98112
}
99113
out
100114
end

0 commit comments

Comments
 (0)