honeydew 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. data/README.md +1 -4
  2. data/Rakefile +2 -2
  3. data/{server → android-server}/.gitignore +0 -0
  4. data/{server → android-server}/pom.xml +5 -5
  5. data/{server → android-server}/repo/com/google/android/uiautomator/4.1.1.4/_maven.repositories +0 -0
  6. data/{server → android-server}/repo/com/google/android/uiautomator/4.1.1.4/uiautomator-4.1.1.4.jar +0 -0
  7. data/{server → android-server}/repo/com/google/android/uiautomator/4.1.1.4/uiautomator-4.1.1.4.pom +0 -0
  8. data/{server → android-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
  9. data/{server → android-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
  10. data/{server → android-server}/repo/com/jayway/maven/plugins/android/generation2/android-maven-plugin/3.5.2-SNAPSHOT/maven-metadata-local.xml +0 -0
  11. data/{server → android-server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/_maven.repositories +0 -0
  12. data/{server → android-server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/commons-jxpath-1.4-SNAPSHOT.jar +0 -0
  13. data/{server → android-server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/commons-jxpath-1.4-SNAPSHOT.pom +0 -0
  14. data/{server → android-server}/repo/commons-jxpath/commons-jxpath/1.4-SNAPSHOT/maven-metadata-local.xml +0 -0
  15. data/{server → android-server}/repo/commons-jxpath/commons-jxpath/maven-metadata-local.xml +0 -0
  16. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/Action.java +1 -1
  17. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/ActionsExecutor.java +2 -2
  18. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/Command.java +1 -1
  19. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/Result.java +1 -1
  20. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/TestRunner.java +3 -3
  21. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/Click.java +3 -3
  22. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/ClickAndWaitForNewWindow.java +3 -3
  23. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/DumpWindowHierarchy.java +3 -3
  24. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/HasSettingsMenuItem.java +4 -4
  25. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/InspectOptionInSettingsMenu.java +2 -2
  26. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsButtonPresent.java +3 -3
  27. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsChildCountEqualTo.java +3 -3
  28. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsElementWithNestedTextPresent.java +3 -3
  29. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsOptionInSettingsMenuDisabled.java +1 -1
  30. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsOptionInSettingsMenuEnabled.java +1 -1
  31. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/IsTextPresent.java +3 -3
  32. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/LaunchApp.java +3 -3
  33. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/LaunchHome.java +3 -3
  34. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/LongClick.java +3 -3
  35. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/PressBack.java +3 -3
  36. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/PressEnter.java +4 -4
  37. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/SelectFromAppsList.java +3 -3
  38. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/SelectMenuInSettings.java +3 -3
  39. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/SetText.java +3 -3
  40. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/SetTextByIndex.java +2 -2
  41. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/SetTextByLabel.java +3 -3
  42. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/Unlock.java +3 -3
  43. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/actions/WakeUp.java +4 -4
  44. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/httpd/NanoHTTPD.java +2 -2
  45. data/{server/src/main/java/com/amplify/honeydew → android-server/src/main/java/com/uiautomator_cucumber/android_server}/httpd/RemoteCommandReceiver.java +5 -5
  46. data/example/Gemfile +3 -3
  47. data/honeydew.gemspec +6 -7
  48. data/lib/honeydew/device.rb +12 -3
  49. data/lib/honeydew/device_actions.rb +62 -61
  50. data/lib/honeydew/device_commands.rb +3 -3
  51. data/lib/honeydew/device_matchers.rb +14 -36
  52. data/lib/honeydew/hooks.rb +0 -0
  53. data/lib/honeydew/step_definitions.rb +75 -0
  54. data/lib/honeydew/version.rb +1 -1
  55. data/lib/honeydew.rb +2 -2
  56. data/lib/tasks/honeydew.rake +7 -0
  57. data/spec/honeydew/device_matchers_spec.rb +42 -21
  58. data/spec/honeydew/device_spec.rb +35 -37
  59. metadata +68 -57
data/README.md CHANGED
@@ -1,9 +1,6 @@
1
1
  # Honeydew
2
2
 
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.
3
+ TODO: Write a gem description
7
4
 
8
5
  ## Installation
9
6
 
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__), 'server'))
14
+ File.absolute_path(File.join(File.dirname(__FILE__), 'android-server'))
15
15
  end
16
16
 
17
- task :build => [:spec, :build_android_server]
17
+ task :build => [:spec, :build_android_server]
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>amplify</groupId>
7
- <artifactId>honeydew-server</artifactId>
8
- <version>0.10.0</version>
6
+ <groupId>uiautomator-cucumber</groupId>
7
+ <artifactId>android-server</artifactId>
8
+ <version>0.0.1-SNAPSHOT</version>
9
9
  <packaging>jar</packaging>
10
- <name>Honeydew Android Server</name>
10
+ <name>UIAutomator Cucumber - 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.amplify.honeydew.TestRunner
108
+ com.uiautomator_cucumber.android_server.TestRunner
109
109
  </testClassOrMethod>
110
110
  </testClassOrMethods>
111
111
  <createReport>true</createReport>
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew;
1
+ package com.uiautomator_cucumber.android_server;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObject;
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew;
1
+ package com.uiautomator_cucumber.android_server;
2
2
 
3
3
  import android.util.Log;
4
4
  import com.android.uiautomator.core.UiDevice;
5
- import com.amplify.honeydew.actions.*;
5
+ import com.uiautomator_cucumber.android_server.actions.*;
6
6
 
7
7
  import java.lang.reflect.Constructor;
8
8
  import java.lang.reflect.InvocationTargetException;
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew;
1
+ package com.uiautomator_cucumber.android_server;
2
2
 
3
3
  import java.util.Map;
4
4
 
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew;
1
+ package com.uiautomator_cucumber.android_server;
2
2
 
3
3
  import org.apache.commons.lang.exception.ExceptionUtils;
4
4
 
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew;
1
+ package com.uiautomator_cucumber.android_server;
2
2
 
3
3
  import android.view.KeyEvent;
4
4
  import com.android.uiautomator.core.UiDevice;
5
5
  import com.android.uiautomator.testrunner.UiAutomatorTestCase;
6
- import com.amplify.honeydew.httpd.RemoteCommandReceiver;
6
+ import com.uiautomator_cucumber.android_server.httpd.RemoteCommandReceiver;
7
7
 
8
8
  public class TestRunner extends UiAutomatorTestCase {
9
9
 
@@ -23,4 +23,4 @@ public class TestRunner extends UiAutomatorTestCase {
23
23
  getUiDevice().pressKeyCode(KeyEvent.KEYCODE_MENU);
24
24
  getUiDevice().pressKeyCode(KeyEvent.KEYCODE_MENU);
25
25
  }
26
- }
26
+ }
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObjectNotFoundException;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
 
8
8
  import java.util.Map;
9
9
 
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObjectNotFoundException;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
 
8
8
  import java.util.Map;
9
9
 
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObjectNotFoundException;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
  import org.apache.commons.io.FileUtils;
8
8
 
9
9
  import java.io.File;
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import android.widget.TextView;
4
4
  import com.android.uiautomator.core.*;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
 
8
8
  import java.util.List;
9
9
  import java.util.Map;
@@ -20,4 +20,4 @@ public class HasSettingsMenuItem extends Action {
20
20
  UiObject menuItem = settingsMenu.getChildByText(new UiSelector().className(TextView.class.getName()), menuName);
21
21
  return menuItem.exists() ? Result.OK : Result.FAILURE;
22
22
  }
23
- }
23
+ }
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import android.widget.TextView;
4
4
  import com.android.uiautomator.core.*;
5
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.List;
8
8
  import java.util.Map;
@@ -1,11 +1,11 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObject;
5
5
  import com.android.uiautomator.core.UiObjectNotFoundException;
6
6
  import com.android.uiautomator.core.UiSelector;
7
- import com.amplify.honeydew.Action;
8
- import com.amplify.honeydew.Result;
7
+ import com.uiautomator_cucumber.android_server.Action;
8
+ import com.uiautomator_cucumber.android_server.Result;
9
9
 
10
10
  import java.util.Map;
11
11
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
 
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
 
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObjectNotFoundException;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
 
8
8
  import java.util.Map;
9
9
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,9 +1,9 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObjectNotFoundException;
5
- import com.amplify.honeydew.Action;
6
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.Action;
6
+ import com.uiautomator_cucumber.android_server.Result;
7
7
 
8
8
  import java.util.Map;
9
9
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -16,4 +16,4 @@ public class PressEnter extends Action {
16
16
  getUiDevice().pressEnter();
17
17
  return Result.OK;
18
18
  }
19
- }
19
+ }
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
 
7
7
  import java.util.Map;
8
8
 
@@ -1,11 +1,11 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObject;
5
5
  import com.android.uiautomator.core.UiObjectNotFoundException;
6
6
  import com.android.uiautomator.core.UiSelector;
7
- import com.amplify.honeydew.Action;
8
- import com.amplify.honeydew.Result;
7
+ import com.uiautomator_cucumber.android_server.Action;
8
+ import com.uiautomator_cucumber.android_server.Result;
9
9
 
10
10
  import java.util.Map;
11
11
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import android.util.*;
4
4
  import com.android.uiautomator.core.*;
5
- import com.amplify.honeydew.*;
5
+ import com.uiautomator_cucumber.android_server.*;
6
6
 
7
7
  import java.util.*;
8
8
 
@@ -1,11 +1,11 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObject;
5
5
  import com.android.uiautomator.core.UiObjectNotFoundException;
6
6
  import com.android.uiautomator.core.UiSelector;
7
- import com.amplify.honeydew.Action;
8
- import com.amplify.honeydew.Result;
7
+ import com.uiautomator_cucumber.android_server.Action;
8
+ import com.uiautomator_cucumber.android_server.Result;
9
9
 
10
10
  import java.util.Map;
11
11
 
@@ -1,11 +1,11 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.UiDevice;
4
4
  import com.android.uiautomator.core.UiObject;
5
5
  import com.android.uiautomator.core.UiObjectNotFoundException;
6
6
  import com.android.uiautomator.core.UiSelector;
7
- import com.amplify.honeydew.Action;
8
- import com.amplify.honeydew.Result;
7
+ import com.uiautomator_cucumber.android_server.Action;
8
+ import com.uiautomator_cucumber.android_server.Result;
9
9
 
10
10
  import java.util.Map;
11
11
 
@@ -1,8 +1,8 @@
1
- package com.amplify.honeydew.actions;
1
+ package com.uiautomator_cucumber.android_server.actions;
2
2
 
3
3
  import com.android.uiautomator.core.*;
4
- import com.amplify.honeydew.Action;
5
- import com.amplify.honeydew.Result;
4
+ import com.uiautomator_cucumber.android_server.Action;
5
+ import com.uiautomator_cucumber.android_server.Result;
6
6
  import android.os.RemoteException;
7
7
 
8
8
  import java.util.Map;
@@ -21,4 +21,4 @@ public class WakeUp extends Action {
21
21
  }
22
22
  return Result.OK;
23
23
  }
24
- }
24
+ }
@@ -1,4 +1,4 @@
1
- package com.amplify.honeydew.httpd;
1
+ package com.uiautomator_cucumber.android_server.httpd;
2
2
 
3
3
  import java.io.*;
4
4
  import java.net.ServerSocket;
@@ -1097,4 +1097,4 @@ public class NanoHTTPD
1097
1097
  "THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n"+
1098
1098
  "(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n"+
1099
1099
  "OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.";
1100
- }
1100
+ }
@@ -1,10 +1,10 @@
1
- package com.amplify.honeydew.httpd;
1
+ package com.uiautomator_cucumber.android_server.httpd;
2
2
 
3
3
  import android.util.Log;
4
4
  import com.google.gson.Gson;
5
- import com.amplify.honeydew.ActionsExecutor;
6
- import com.amplify.honeydew.Command;
7
- import com.amplify.honeydew.Result;
5
+ import com.uiautomator_cucumber.android_server.ActionsExecutor;
6
+ import com.uiautomator_cucumber.android_server.Command;
7
+ import com.uiautomator_cucumber.android_server.Result;
8
8
 
9
9
  import java.io.File;
10
10
  import java.io.IOException;
@@ -61,4 +61,4 @@ public class RemoteCommandReceiver extends NanoHTTPD {
61
61
  private void log(String uri, String method, Properties params) {
62
62
  Log.d(TAG, String.format("Processing uri: %s, method: %s, params: %s", uri, method, params));
63
63
  }
64
- }
64
+ }
data/example/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'honeydew'
4
- gem 'rspec'
5
- gem 'rake'
3
+ gem 'honeydew', :path => File.join(File.dirname(__FILE__), '..')
4
+ gem 'cucumber'
5
+ gem 'rake'
data/honeydew.gemspec CHANGED
@@ -6,13 +6,11 @@ require 'honeydew/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "honeydew"
8
8
  spec.version = Honeydew::VERSION
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
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 = ""
16
14
 
17
15
  spec.files = `git ls-files`.split($/) + Dir['android-server/target/*.jar']
18
16
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -23,6 +21,7 @@ Android devices.
23
21
  spec.add_development_dependency "rake"
24
22
  spec.add_development_dependency "rspec"
25
23
 
24
+ spec.add_dependency("cucumber")
26
25
  spec.add_dependency("json")
27
26
  spec.add_dependency("rest-client")
28
27
  spec.add_dependency("activesupport")
@@ -18,15 +18,24 @@ module Honeydew
18
18
  end
19
19
 
20
20
  def contains_textview_text?(text, timeout = Honeydew.config.timeout)
21
- has_textview_text? text, timeout
21
+ response = has_textview_text? text, timeout
22
+ response['success']
23
+ rescue
24
+ false
22
25
  end
23
26
 
24
27
  def contains_element_with_description?(description, timeout = Honeydew.config.timeout)
25
- has_element_with_description? description, timeout
28
+ response = has_element_with_description? description, timeout
29
+ response['success']
30
+ rescue
31
+ false
26
32
  end
27
33
 
28
34
  def contains_button?(text, timeout = Honeydew.config.timeout)
29
- has_button? text, timeout
35
+ response = has_button? text, timeout
36
+ response['success']
37
+ rescue
38
+ false
30
39
  end
31
40
 
32
41
  def is_app_installed?(package_name)