calabash-android 0.2.18 → 0.2.19
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES.txt +5 -0
- data/lib/calabash-android/calabash_steps.rb +1 -0
- data/lib/calabash-android/canned_steps.md +6 -0
- data/lib/calabash-android/steps/navigation_steps.rb +6 -1
- data/lib/calabash-android/steps/search_steps.rb +7 -0
- data/lib/calabash-android/version.rb +1 -1
- data/test-server/instrumentation-backend/project.properties +1 -1
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressImageButtonDescription.java +31 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/gestures/Drag.java +40 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/search/EnterQueryByIndex.java +31 -0
- metadata +6 -2
data/CHANGES.txt
CHANGED
@@ -14,5 +14,6 @@ require 'calabash-android/steps/press_button_steps'
|
|
14
14
|
require 'calabash-android/steps/progress_steps'
|
15
15
|
require 'calabash-android/steps/rotation_steps'
|
16
16
|
require 'calabash-android/steps/screenshot_steps'
|
17
|
+
require 'calabash-android/steps/search_steps'
|
17
18
|
require 'calabash-android/steps/spinner_steps'
|
18
19
|
require 'calabash-android/steps/time_picker_steps'
|
@@ -100,8 +100,14 @@ To scroll up
|
|
100
100
|
Then /^I scroll up$/
|
101
101
|
|
102
102
|
To open the menu and press the specified text
|
103
|
+
|
103
104
|
Then /^I select "([^\"]*)" from the menu$/
|
105
|
+
|
106
|
+
To drag from one point on the screen to another.
|
104
107
|
|
108
|
+
Then /^I drag from (\d+):(\d+) to (\d+):(\d+) moving with (\d+) steps$/
|
109
|
+
Note: x:y co-ordinates are expressed as percentages of the screen width:height
|
110
|
+
|
105
111
|
Touching
|
106
112
|
--------
|
107
113
|
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Then /^I enter "([^\"]*)" into search field$/ do |text|
|
2
|
+
performAction('enter_query_into_numbered_field', text, 1)
|
3
|
+
end
|
4
|
+
|
5
|
+
Then /^I enter "([^\"]*)" into search field number (\d+)$/ do |text, number|
|
6
|
+
performAction('enter_query_into_numbered_field', text, number)
|
7
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
package sh.calaba.instrumentationbackend.actions.button;
|
2
|
+
|
3
|
+
|
4
|
+
import android.widget.ImageButton;
|
5
|
+
import android.view.ViewGroup;
|
6
|
+
import sh.calaba.instrumentationbackend.InstrumentationBackend;
|
7
|
+
import sh.calaba.instrumentationbackend.Result;
|
8
|
+
import sh.calaba.instrumentationbackend.actions.Action;
|
9
|
+
|
10
|
+
|
11
|
+
public class PressImageButtonDescription implements Action {
|
12
|
+
|
13
|
+
@Override
|
14
|
+
public Result execute(String... args) {
|
15
|
+
String err = "No image button found with description "+args[0]+" found. Found only:";
|
16
|
+
for (ImageButton b : InstrumentationBackend.solo.getCurrentImageButtons()){
|
17
|
+
err += " "+ b.getContentDescription();
|
18
|
+
if (args[0].equals(b.getContentDescription())){
|
19
|
+
InstrumentationBackend.solo.clickOnView(b);
|
20
|
+
return Result.successResult();
|
21
|
+
}
|
22
|
+
}
|
23
|
+
return new Result(false, err);
|
24
|
+
}
|
25
|
+
|
26
|
+
@Override
|
27
|
+
public String key() {
|
28
|
+
return "press_image_button_description";
|
29
|
+
}
|
30
|
+
|
31
|
+
}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
package sh.calaba.instrumentationbackend.actions.gestures;
|
2
|
+
|
3
|
+
import sh.calaba.instrumentationbackend.InstrumentationBackend;
|
4
|
+
import sh.calaba.instrumentationbackend.Result;
|
5
|
+
import sh.calaba.instrumentationbackend.actions.Action;
|
6
|
+
|
7
|
+
import android.util.DisplayMetrics;
|
8
|
+
|
9
|
+
public class Drag implements Action {
|
10
|
+
|
11
|
+
@Override
|
12
|
+
public Result execute(String... args) {
|
13
|
+
|
14
|
+
Float fromX = new Float(args[0]);
|
15
|
+
Float toX = new Float(args[1]);
|
16
|
+
Float fromY = new Float(args[2]);
|
17
|
+
Float toY = new Float(args[3]);
|
18
|
+
Integer stepCount = new Integer(args[4]);
|
19
|
+
|
20
|
+
DisplayMetrics dm = new DisplayMetrics();
|
21
|
+
InstrumentationBackend.solo.getCurrentActivity().getWindowManager()
|
22
|
+
.getDefaultDisplay().getMetrics(dm);
|
23
|
+
Integer windowWidth = dm.widthPixels;
|
24
|
+
Integer windowHeight = dm.heightPixels;
|
25
|
+
|
26
|
+
InstrumentationBackend.solo.drag(fromX / 100 * windowWidth,
|
27
|
+
toX / 100 * windowWidth,
|
28
|
+
fromY / 100 * windowHeight,
|
29
|
+
toY / 100 * windowHeight,
|
30
|
+
stepCount);
|
31
|
+
|
32
|
+
return Result.successResult();
|
33
|
+
}
|
34
|
+
|
35
|
+
@Override
|
36
|
+
public String key() {
|
37
|
+
return "drag";
|
38
|
+
}
|
39
|
+
|
40
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
package sh.calaba.instrumentationbackend.actions.search;
|
2
|
+
|
3
|
+
import sh.calaba.instrumentationbackend.InstrumentationBackend;
|
4
|
+
import sh.calaba.instrumentationbackend.Result;
|
5
|
+
import sh.calaba.instrumentationbackend.actions.Action;
|
6
|
+
|
7
|
+
public class EnterQueryByIndex implements Action {
|
8
|
+
@Override
|
9
|
+
public Result execute(String... args) {
|
10
|
+
/*
|
11
|
+
final String query = args[0];
|
12
|
+
final SearchView view = (SearchView) InstrumentationBackend.solo.getView(
|
13
|
+
SearchView.class, Integer.parseInt(args[1]) - 1);
|
14
|
+
|
15
|
+
InstrumentationBackend.instrumentation.runOnMainSync(new Runnable() {
|
16
|
+
@Override
|
17
|
+
public void run() {
|
18
|
+
view.setQuery(query, true);
|
19
|
+
}
|
20
|
+
});
|
21
|
+
|
22
|
+
return Result.successResult();
|
23
|
+
*/
|
24
|
+
throw new RuntimeException("Not supported in this version. Will be reintroduced when we have a way to support features from newer versions of Android.");
|
25
|
+
}
|
26
|
+
|
27
|
+
@Override
|
28
|
+
public String key() {
|
29
|
+
return "enter_query_into_numbered_field";
|
30
|
+
}
|
31
|
+
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: calabash-android
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.19
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-09-
|
12
|
+
date: 2012-09-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cucumber
|
@@ -133,6 +133,7 @@ files:
|
|
133
133
|
- lib/calabash-android/steps/progress_steps.rb
|
134
134
|
- lib/calabash-android/steps/rotation_steps.rb
|
135
135
|
- lib/calabash-android/steps/screenshot_steps.rb
|
136
|
+
- lib/calabash-android/steps/search_steps.rb
|
136
137
|
- lib/calabash-android/steps/spinner_steps.rb
|
137
138
|
- lib/calabash-android/steps/time_picker_steps.rb
|
138
139
|
- lib/calabash-android/version.rb
|
@@ -165,6 +166,7 @@ files:
|
|
165
166
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/NullAction.java
|
166
167
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressButtonNumber.java
|
167
168
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressButtonText.java
|
169
|
+
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressImageButtonDescription.java
|
168
170
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressImageButtonNumber.java
|
169
171
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/WaitForButton.java
|
170
172
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/checkbox/ToggleCheckboxNumber.java
|
@@ -173,6 +175,7 @@ files:
|
|
173
175
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/contextmenu/LongPressTextAndSelectFromMenuByIndex.java
|
174
176
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/contextmenu/LongPressTextAndSelectFromMenuByText.java
|
175
177
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/gestures/ClickOnScreen.java
|
178
|
+
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/gestures/Drag.java
|
176
179
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/gestures/Swipe.java
|
177
180
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/helpers/ListActions.java
|
178
181
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/list/GetListItemProperties.java
|
@@ -203,6 +206,7 @@ files:
|
|
203
206
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/map_unsupported/UnsupportedMapAction.java
|
204
207
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/scrolling/ScrollDown.java
|
205
208
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/scrolling/ScrollUp.java
|
209
|
+
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/search/EnterQueryByIndex.java
|
206
210
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/softkey/DownKey.java
|
207
211
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/softkey/EnterKey.java
|
208
212
|
- test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/softkey/GoBack.java
|