honeydew 0.1.4 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. data/README.md +4 -1
  2. data/Rakefile +2 -2
  3. data/example/Gemfile +3 -3
  4. data/honeydew.gemspec +7 -6
  5. data/lib/honeydew.rb +2 -2
  6. data/lib/honeydew/device.rb +3 -12
  7. data/lib/honeydew/device_actions.rb +61 -62
  8. data/lib/honeydew/device_commands.rb +3 -3
  9. data/lib/honeydew/device_matchers.rb +36 -14
  10. data/lib/honeydew/version.rb +1 -1
  11. data/{android-server → server}/.gitignore +0 -0
  12. data/{android-server → server}/pom.xml +5 -5
  13. data/{android-server → server}/repo/com/google/android/uiautomator/4.1.1.4/_maven.repositories +0 -0
  14. data/{android-server → server}/repo/com/google/android/uiautomator/4.1.1.4/uiautomator-4.1.1.4.jar +0 -0
  15. data/{android-server → server}/repo/com/google/android/uiautomator/4.1.1.4/uiautomator-4.1.1.4.pom +0 -0
  16. data/{android-server → server}/repo/com/jayway/maven/plugins/android/generation2/android-maven-plugin/3.5.2-SNAPSHOT/android-maven-plugin-3.5.2-SNAPSHOT.jar +0 -0
  17. data/{android-server → server}/repo/com/jayway/maven/plugins/android/generation2/android-maven-plugin/3.5.2-SNAPSHOT/android-maven-plugin-3.5.2-SNAPSHOT.pom +0 -0
  18. data/{android-server → server}/repo/com/jayway/maven/plugins/android/generation2/android-maven-plugin/3.5.2-SNAPSHOT/maven-metadata-local.xml +0 -0
  19. data/{android-server → server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/_maven.repositories +0 -0
  20. data/{android-server → server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/commons-jxpath-1.4-SNAPSHOT.jar +0 -0
  21. data/{android-server → server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/commons-jxpath-1.4-SNAPSHOT.pom +0 -0
  22. data/{android-server → server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/maven-metadata-local.xml +0 -0
  23. data/{android-server → server}/repo/commons-jxpath/commons-jxpath/maven-metadata-local.xml +0 -0
  24. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/Action.java +1 -1
  25. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/ActionsExecutor.java +2 -2
  26. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/Command.java +1 -1
  27. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/Result.java +1 -1
  28. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/TestRunner.java +3 -3
  29. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/Click.java +3 -3
  30. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/ClickAndWaitForNewWindow.java +3 -3
  31. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/DumpWindowHierarchy.java +3 -3
  32. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/HasSettingsMenuItem.java +4 -4
  33. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/InspectOptionInSettingsMenu.java +2 -2
  34. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsButtonPresent.java +3 -3
  35. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsChildCountEqualTo.java +3 -3
  36. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsElementWithNestedTextPresent.java +3 -3
  37. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsOptionInSettingsMenuDisabled.java +1 -1
  38. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsOptionInSettingsMenuEnabled.java +1 -1
  39. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/IsTextPresent.java +3 -3
  40. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/LaunchApp.java +3 -3
  41. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/LaunchHome.java +3 -3
  42. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/LongClick.java +3 -3
  43. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/PressBack.java +3 -3
  44. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/PressEnter.java +4 -4
  45. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/SelectFromAppsList.java +3 -3
  46. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/SelectMenuInSettings.java +3 -3
  47. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/SetText.java +3 -3
  48. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/SetTextByIndex.java +2 -2
  49. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/SetTextByLabel.java +3 -3
  50. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/Unlock.java +3 -3
  51. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/actions/WakeUp.java +4 -4
  52. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/httpd/NanoHTTPD.java +2 -2
  53. data/{android-server/src/main/java/com/uiautomator_cucumber/android_server → server/src/main/java/com/amplify/honeydew}/httpd/RemoteCommandReceiver.java +5 -5
  54. data/spec/honeydew/device_matchers_spec.rb +21 -42
  55. data/spec/honeydew/device_spec.rb +37 -35
  56. metadata +57 -68
  57. data/lib/honeydew/hooks.rb +0 -0
  58. data/lib/honeydew/step_definitions.rb +0 -75
  59. data/lib/tasks/honeydew.rake +0 -7
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  # Honeydew
2
2
 
3
- TODO: Write a gem description
3
+ NOTE: Honeydew is currently in alpha and is not quite ready for use.
4
+
5
+ Honeydew is a Ruby driver for UIAutomator which enables automated testing of
6
+ Android devices.
4
7
 
5
8
  ## Installation
6
9
 
data/Rakefile CHANGED
@@ -11,7 +11,7 @@ task :build_android_server do
11
11
  end
12
12
 
13
13
  def android_server_path
14
- File.absolute_path(File.join(File.dirname(__FILE__), 'android-server'))
14
+ File.absolute_path(File.join(File.dirname(__FILE__), 'server'))
15
15
  end
16
16
 
17
- task :build => [:spec, :build_android_server]
17
+ task :build => [:spec, :build_android_server]
data/example/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'honeydew', :path => File.join(File.dirname(__FILE__), '..')
4
- gem 'cucumber'
5
- gem 'rake'
3
+ gem 'honeydew'
4
+ gem 'rspec'
5
+ gem 'rake'
data/honeydew.gemspec CHANGED
@@ -6,11 +6,13 @@ require 'honeydew/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "honeydew"
8
8
  spec.version = Honeydew::VERSION
9
- spec.authors = ["Selva", "Christopher Rex"]
10
- spec.email = ["scmp-team@amplify.com"]
11
- spec.description = %q{Automated functional testing on Android with uiautomator and cucumber}
12
- spec.summary = %q{Automated functional testing on Android with uiautomator and cucumber}
13
- spec.homepage = ""
9
+ spec.authors = ["Selvakumar Natesan", "Christopher Rex", "Shyam Vala", "John Barker"]
10
+ spec.email = ["scmp-team@amplify.com", "jbarker@amplify.com"]
11
+ spec.summary = %q{Ruby DSL for controlling Android devices}
12
+ spec.description = <<-EOF
13
+ Honeydew is a Ruby driver for UIAutomator which enables automated testing of
14
+ Android devices.
15
+ EOF
14
16
 
15
17
  spec.files = `git ls-files`.split($/) + Dir['android-server/target/*.jar']
16
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -21,7 +23,6 @@ Gem::Specification.new do |spec|
21
23
  spec.add_development_dependency "rake"
22
24
  spec.add_development_dependency "rspec"
23
25
 
24
- spec.add_dependency("cucumber")
25
26
  spec.add_dependency("json")
26
27
  spec.add_dependency("rest-client")
27
28
  spec.add_dependency("activesupport")
data/lib/honeydew.rb CHANGED
@@ -3,8 +3,8 @@ require 'bundler/setup'
3
3
  require 'restclient'
4
4
  require 'active_support/core_ext'
5
5
 
6
- require "honeydew/version"
7
- require "honeydew/device"
6
+ require 'honeydew/version'
7
+ require 'honeydew/device'
8
8
 
9
9
  module Honeydew
10
10
  class Configuration
@@ -18,24 +18,15 @@ module Honeydew
18
18
  end
19
19
 
20
20
  def contains_textview_text?(text, timeout = Honeydew.config.timeout)
21
- response = has_textview_text? text, timeout
22
- response['success']
23
- rescue
24
- false
21
+ has_textview_text? text, timeout
25
22
  end
26
23
 
27
24
  def contains_element_with_description?(description, timeout = Honeydew.config.timeout)
28
- response = has_element_with_description? description, timeout
29
- response['success']
30
- rescue
31
- false
25
+ has_element_with_description? description, timeout
32
26
  end
33
27
 
34
28
  def contains_button?(text, timeout = Honeydew.config.timeout)
35
- response = has_button? text, timeout
36
- response['success']
37
- rescue
38
- false
29
+ has_button? text, timeout
39
30
  end
40
31
 
41
32
  def is_app_installed?(package_name)
@@ -4,147 +4,146 @@ module Honeydew
4
4
  module DeviceActions
5
5
  include Honeydew::DeviceCommands
6
6
 
7
- def click_button(button_text)
8
- perform_action :action => 'click', :arguments => {:text => button_text, :type => 'Button'}
7
+ def click_button button_text
8
+ perform_action :click, :text => button_text, :type => 'Button'
9
9
  end
10
10
 
11
- def click_button_and_wait(button_text)
12
- perform_action :action => 'click_and_wait_for_new_window', :arguments => {:text => button_text, :type => 'Button'}
11
+ def click_button_and_wait button_text
12
+ perform_action :click_and_wait_for_new_window, :text => button_text, :type => 'Button'
13
13
  end
14
14
 
15
- def click_text(text)
16
- perform_action :action => 'click', :arguments => {:text => text, :type => 'TextView'}
15
+ def click_text text
16
+ perform_action :click, :text => text, :type => 'TextView'
17
17
  end
18
18
 
19
- def click_text_and_wait(text)
20
- perform_action :action => 'click_and_wait_for_new_window', :arguments => {:text => text, :type => 'TextView'}
19
+ def click_text_and_wait text
20
+ perform_action :click_and_wait_for_new_window, :text => text, :type => 'TextView'
21
21
  end
22
22
 
23
- def click_element(element_description)
24
- perform_action :action => 'click', :arguments => {:description => element_description}
23
+ def click_element element_description
24
+ perform_action :click, :description => element_description
25
25
  end
26
26
 
27
- def click_element_and_wait(element_description)
28
- perform_action :action => 'click_and_wait_for_new_window', :arguments => {:description => element_description}
27
+ def click_element_and_wait element_description
28
+ perform_action :click_and_wait_for_new_window, :description => element_description
29
29
  end
30
30
 
31
31
  def fill_in field_description, options = {with: ''}
32
- perform_action :action => 'set_text', :arguments => {:description => field_description, :text => options[:with]}
32
+ perform_action :set_text, :description => field_description, :text => options[:with]
33
33
  end
34
34
 
35
35
  def fill_in_by_label field_label, options = {with: ''}
36
- perform_action :action => 'set_text_by_label', :arguments => {:label => field_label, :text => options[:with]}
36
+ perform_action :set_text_by_label, :label => field_label, :text => options[:with]
37
37
  end
38
38
 
39
39
  def fill_in_by_index index, options = {with: ''}
40
- perform_action :action => 'set_text_by_index', :arguments => {:index => index, :text => options[:with]}
40
+ perform_action :set_text_by_index, :index => index, :text => options[:with]
41
41
  end
42
42
 
43
43
  def launch_home
44
- perform_action :action => 'launch_home'
44
+ perform_action :launch_home
45
45
  end
46
46
 
47
- def launch_settings_app(app_name)
48
- perform_action :action => 'select_from_apps_list', :arguments => {:appName => app_name}
47
+ def launch_settings_app app_name
48
+ perform_action :select_from_apps_list, :appName => app_name
49
49
  end
50
50
 
51
- def launch_application(application_name)
52
- perform_action :action => 'launch_app', :arguments => {:appName => application_name}, :attempts => 3
51
+ def launch_application application_name
52
+ perform_action :launch_app, :appName => application_name, :attempts => 3
53
53
  end
54
54
 
55
- def long_click_element(element_description)
56
- perform_action :action => 'long_click', :arguments => {:description => element_description}
55
+ def long_click_element element_description
56
+ perform_action :long_click, :description => element_description
57
57
  end
58
58
 
59
- def launch_settings_item(item_name)
60
- perform_action :action => 'select_menu_in_settings', :arguments => {:menuName => item_name}
59
+ def launch_settings_item item_name
60
+ perform_action :select_menu_in_settings, :menuName => item_name
61
61
  end
62
62
 
63
-
64
63
  def press_back
65
- perform_action :action => 'press_back'
64
+ perform_action :press_back
66
65
  end
67
66
 
68
67
  def press_enter
69
- perform_action :action => 'press_enter'
68
+ perform_action :press_enter
70
69
  end
71
70
 
72
71
  def unlock
73
- perform_action :action => 'unlock'
72
+ perform_action :unlock
74
73
  end
75
74
 
76
75
  def wake_up
77
- perform_action :action => 'wake_up'
76
+ perform_action :wake_up
78
77
  end
79
78
 
80
- def perform_action(options)
81
- ensure_tablet_ready
79
+ def perform_assertion action, arguments = {}, options = {}
80
+ response = perform_action action, arguments, options
81
+ response['success']
82
+ rescue
83
+ end
82
84
 
83
- command = options.slice(:action, :arguments)
84
- timeout = options[:retry_until]
85
+ def perform_action action, arguments = {}, options = {}
86
+ timeout = options[:timeout]
85
87
  attempts = options[:attempts]
86
88
 
87
- response =
88
- if timeout
89
- retry_until_timeout(timeout, command)
90
- elsif attempts
91
- retry_until_success(attempts, command)
92
- else
93
- execute_command(command)
94
- end
95
- log_action(command, response)
96
- raise "Device: #{serial} :Action #{options} failed." unless response['success']
97
- response
89
+ if timeout
90
+ retry_until_timeout timeout, action, arguments
91
+ elsif attempts
92
+ retry_until_success attempts, action, arguments
93
+ else
94
+ execute_command action, arguments
95
+ end
98
96
  end
99
97
 
100
98
  private
101
99
 
102
- def retry_until_success(attempts, command)
100
+ def retry_until_success attempts, action, arguments
103
101
  completed = false
104
102
  response = nil
105
103
  tries = 0
106
- until completed || (tries >= attempts) do
107
- response = execute_command(command)
104
+ until completed || tries >= attempts do
105
+ response = execute_command action, arguments
108
106
  completed = response['success']
109
107
  return response if completed
110
108
  tries += 1
111
109
  sleep 1
112
110
  end
113
- log_action(command, response)
114
- raise "Device: #{serial} : All #{attempts} attempts failed while performing #{command[:action]}, with arguments: #{command[:arguments]}"
111
+ raise "Device: #{serial} : All #{attempts} attempts failed while performing #{action}, with arguments: #{arguments}"
115
112
  end
116
113
 
117
- def retry_until_timeout(timeout, command)
114
+ def retry_until_timeout timeout, action, arguments
118
115
  completed = false
119
116
  response = nil
120
117
  Timeout.timeout(timeout.to_i) do
121
118
  until completed do
122
119
  sleep 1
123
- response = execute_command(command)
120
+ response = execute_command action, arguments
124
121
  completed = response['success']
125
122
  end
126
123
  end
127
124
  return response
128
125
  rescue Timeout::Error
129
- log_action(command, response)
130
- raise "Device: #{serial} :Timeout while performing #{command[:action]}, with arguments: #{command[:arguments]}"
126
+ raise "Device: #{serial} :Timeout while performing #{action}, with arguments: #{arguments}"
131
127
  end
132
128
 
133
- def execute_command(command)
134
- response = RestClient.get(device_endpoint, :params => stringify_keys(:command => command))
135
- JSON.parse(response)
136
- end
129
+ def execute_command action, arguments
130
+ ensure_tablet_ready
131
+
132
+ log "Device: #{serial} : executing command #{action} with arguments #{arguments}"
133
+
134
+ command = stringify_keys(command: {action: action, arguments: arguments})
135
+ response = RestClient.get device_endpoint, :params => command
137
136
 
138
- def log_action(command, response)
139
- log "Device: #{serial} : executing command: #{command}"
140
137
  log "Device: #{serial} : responded with: #{response}"
138
+
139
+ JSON.parse response
141
140
  end
142
141
 
143
- def stringify_keys(options)
144
- JSON.parse(options.to_json)
142
+ def stringify_keys arguments
143
+ JSON.parse arguments.to_json
145
144
  end
146
145
 
147
- def log(message)
146
+ def log message
148
147
  puts message
149
148
  end
150
149
  end
@@ -6,7 +6,7 @@ module Honeydew
6
6
  end
7
7
 
8
8
  def dump_window_hierarchy(local_path)
9
- path_in_device = perform_action(:action => 'dump_window_hierarchy')['description']
9
+ path_in_device = perform_action('dump_window_hierarchy')['description']
10
10
  adb "pull #{path_in_device} #{local_path}"
11
11
  end
12
12
 
@@ -41,7 +41,7 @@ module Honeydew
41
41
  def start_automation_server
42
42
  Thread.new do
43
43
  adb "push #{automation_server_jar_path} /data/local/tmp"
44
- adb "shell uiautomator runtest #{automation_test_jar_name} -c com.uiautomator_cucumber.android_server.TestRunner"
44
+ adb "shell uiautomator runtest #{automation_test_jar_name} -c com.amplify.honeydew_server.TestRunner"
45
45
  log "Device: #{serial} initiated the start of automation server"
46
46
  end
47
47
  at_exit do
@@ -81,4 +81,4 @@ module Honeydew
81
81
  end
82
82
 
83
83
  end
84
- end
84
+ end
@@ -1,36 +1,54 @@
1
1
  module Honeydew
2
2
  module DeviceMatchers
3
-
4
3
  def has_text?(text, timeout = Honeydew.config.timeout)
5
- perform_action :action => 'is_text_present', :arguments => {:text => text}, :retry_until => timeout
4
+ perform_assertion :is_text_present,
5
+ {:text => text},
6
+ :timeout => timeout
6
7
  end
7
8
 
8
9
  def has_element_with_description?(description, timeout = Honeydew.config.timeout)
9
- perform_action :action => 'is_text_present', :arguments => {:description => description}, :retry_until => timeout
10
+ perform_assertion :is_text_present,
11
+ {:description => description},
12
+ :timeout => timeout
10
13
  end
11
14
 
12
15
  def has_edit_text?(text, timeout = Honeydew.config.timeout)
13
- perform_action :action => 'is_text_present', :arguments => {:text => text, :type => 'EditText'}, :retry_until => timeout
16
+ perform_assertion :is_text_present,
17
+ {:text => text, :type => 'EditText'},
18
+ :timeout => timeout
14
19
  end
15
20
 
16
21
  def has_textview_text?(text, timeout = Honeydew.config.timeout)
17
- perform_action :action => 'is_text_present', :arguments => {:text => text, :type => 'TextView'}, :retry_until => timeout
22
+ perform_assertion :is_text_present,
23
+ {:text => text, :type => 'TextView'},
24
+ :timeout => timeout
18
25
  end
19
26
 
20
- def has_textview_with_text_and_description?(text, description, timeout=Honeydew.config.timeout)
21
- perform_action :action => 'is_text_present', :arguments => {:text => text, :description => description, :type => 'TextView'}, :retry_until => timeout
27
+ def has_textview_with_text_and_description?(text, description, timeout = Honeydew.config.timeout)
28
+ perform_assertion :is_text_present,
29
+ {:text => text, :description => description, :type => 'TextView'},
30
+ :timeout => timeout
22
31
  end
23
32
 
24
33
  def has_button?(button_text, timeout = Honeydew.config.timeout)
25
- perform_action(:action => 'is_button_present', :arguments => {:text => button_text}, :retry_until => timeout)
34
+ perform_assertion :is_button_present,
35
+ {:text => button_text},
36
+ :timeout => timeout
26
37
  end
27
38
 
28
39
  def has_child_count?(parent_element_description, child_element_description, child_count, timeout = Honeydew.config.timeout)
29
- perform_action(:action => 'is_child_count_equal_to', :arguments => {:parent_description => parent_element_description, :child_description => child_element_description, :child_count => child_count}, :retry_until => timeout)
40
+ perform_assertion :is_child_count_equal_to,
41
+ {:parent_description => parent_element_description,
42
+ :child_description => child_element_description,
43
+ :child_count => child_count},
44
+ :timeout => timeout
30
45
  end
31
46
 
32
47
  def has_element_with_nested_text?(parent_description, child_text, timeout = Honeydew.config.timeout)
33
- perform_action(:action => 'is_element_with_nested_text_present', :arguments => {:parent_description => parent_description, :child_text => child_text}, :retry_until => timeout)
48
+ perform_assertion :is_element_with_nested_text_present,
49
+ {:parent_description => parent_description,
50
+ :child_text => child_text},
51
+ :timeout => timeout
34
52
  end
35
53
 
36
54
  def has_app_installed?(package_name)
@@ -38,15 +56,19 @@ module Honeydew
38
56
  end
39
57
 
40
58
  def is_option_in_setting_enabled?(item_name, option_names)
41
- perform_action :action => 'is_option_in_settings_menu_enabled', :arguments => {:menuName => item_name, :optionNames => option_names}
59
+ perform_assertion :is_option_in_settings_menu_enabled,
60
+ :menuName => item_name, :optionNames => option_names
42
61
  end
43
62
 
44
63
  def is_option_in_setting_disabled?(item_name, option_names)
45
- perform_action :action => 'is_option_in_settings_menu_disabled', :arguments => {:menuName => item_name, :optionNames => option_names}
64
+ perform_assertion :is_option_in_settings_menu_disabled,
65
+ :menuName => item_name, :optionNames => option_names
46
66
  end
47
67
 
48
68
  def has_settings_menu_item?(item_name, timeout = 10)
49
- perform_action(:action => 'has_settings_menu_item', :arguments => {:menuName => item_name}, :retry_until => timeout)
69
+ perform_assertion :has_settings_menu_item,
70
+ {:menuName => item_name},
71
+ :timeout => timeout
50
72
  end
51
73
  end
52
- end
74
+ end
@@ -1,3 +1,3 @@
1
1
  module Honeydew
2
- VERSION = "0.1.4"
2
+ VERSION = "0.10.0"
3
3
  end
File without changes
@@ -3,11 +3,11 @@
3
3
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
4
  <modelVersion>4.0.0</modelVersion>
5
5
 
6
- <groupId>uiautomator-cucumber</groupId>
7
- <artifactId>android-server</artifactId>
8
- <version>0.0.1-SNAPSHOT</version>
6
+ <groupId>amplify</groupId>
7
+ <artifactId>honeydew-server</artifactId>
8
+ <version>0.10.0</version>
9
9
  <packaging>jar</packaging>
10
- <name>UIAutomator Cucumber - Android Server</name>
10
+ <name>Honeydew Android Server</name>
11
11
 
12
12
  <properties>
13
13
  <platform.version>4.1.1.4</platform.version>
@@ -105,7 +105,7 @@
105
105
  <skip>false</skip>
106
106
  <testClassOrMethods>
107
107
  <testClassOrMethod>
108
- com.uiautomator_cucumber.android_server.TestRunner
108
+ com.amplify.honeydew.TestRunner
109
109
  </testClassOrMethod>
110
110
  </testClassOrMethods>
111
111
  <createReport>true</createReport>