calabash-cucumber 0.9.5 → 0.9.6
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.
data/calabash-cucumber.gemspec
CHANGED
@@ -26,7 +26,7 @@ end
|
|
26
26
|
|
27
27
|
Then /^I (press|touch) button number (\d+)$/ do |_,index|
|
28
28
|
index = index.to_i
|
29
|
-
|
29
|
+
screenshot_and_raise "Index should be positive (was: #{index})" if (index<=0)
|
30
30
|
touch("button index:#{index-1}")
|
31
31
|
sleep(STEP_PAUSE)
|
32
32
|
end
|
@@ -44,7 +44,7 @@ end
|
|
44
44
|
##TODO note in tables views: this means visible cell index!
|
45
45
|
Then /^I (press|touch) list item number (\d+)$/ do |_,index|
|
46
46
|
index = index.to_i
|
47
|
-
|
47
|
+
screenshot_and_raise "Index should be positive (was: #{index})" if (index<=0)
|
48
48
|
touch("tableViewCell index:#{index-1}")
|
49
49
|
sleep(STEP_PAUSE)
|
50
50
|
end
|
@@ -79,7 +79,7 @@ end
|
|
79
79
|
|
80
80
|
Then /^I enter "([^\"]*)" into input field number (\d+)$/ do |text, index|
|
81
81
|
index = index.to_i
|
82
|
-
|
82
|
+
screenshot_and_raise "Index should be positive (was: #{index})" if (index<=0)
|
83
83
|
set_text("textField index:#{index-1}",text)
|
84
84
|
sleep(STEP_PAUSE)
|
85
85
|
end
|
@@ -90,7 +90,7 @@ end
|
|
90
90
|
|
91
91
|
Then /^I clear input field number (\d+)$/ do |index|
|
92
92
|
index = index.to_i
|
93
|
-
|
93
|
+
screenshot_and_raise "Index should be positive (was: #{index})" if (index<=0)
|
94
94
|
set_text("textField index:#{index-1}","")
|
95
95
|
sleep(STEP_PAUSE)
|
96
96
|
end
|
@@ -181,7 +181,7 @@ end
|
|
181
181
|
|
182
182
|
Then /^I swipe on cell number (\d+)$/ do |index|
|
183
183
|
index = index.to_i
|
184
|
-
|
184
|
+
screenshot_and_raise "Index should be positive (was: #{index})" if (index<=0)
|
185
185
|
cell_swipe({:query => "tableViewCell index:#{index-1}"})
|
186
186
|
sleep(STEP_PAUSE)
|
187
187
|
end
|
@@ -19,10 +19,16 @@ module Operations
|
|
19
19
|
map(uiquery, :query, *args)
|
20
20
|
end
|
21
21
|
|
22
|
+
def screenshot_and_raise(msg)
|
23
|
+
screenshot
|
24
|
+
sleep 5
|
25
|
+
raise(msg)
|
26
|
+
end
|
27
|
+
|
22
28
|
def touch(uiquery,options={})
|
23
29
|
options[:query] = uiquery
|
24
30
|
views_touched = playback("touch",options)
|
25
|
-
|
31
|
+
screenshot_and_raise "could not find view to touch: '#{uiquery}', args: #{args}" if views_touched.empty?
|
26
32
|
views_touched
|
27
33
|
end
|
28
34
|
|
@@ -40,7 +46,7 @@ module Operations
|
|
40
46
|
|
41
47
|
def set_text(uiquery, txt)
|
42
48
|
text_fields_modified = map(uiquery, :setText, txt)
|
43
|
-
|
49
|
+
screenshot_and_raise "could not find text field #{uiquery}" if text_fields_modified.empty?
|
44
50
|
text_fields_modified
|
45
51
|
end
|
46
52
|
|
@@ -59,13 +65,13 @@ module Operations
|
|
59
65
|
|
60
66
|
def scroll(uiquery,direction)
|
61
67
|
views_touched=map(uiquery, :scroll, direction)
|
62
|
-
|
68
|
+
screenshot_and_raise "could not find view to scroll: '#{uiquery}', args: #{direction}" if views_touched.empty?
|
63
69
|
views_touched
|
64
70
|
end
|
65
71
|
|
66
72
|
def scroll_to_row(uiquery,number)
|
67
73
|
views_touched=map(uiquery, :scrollToRow, number)
|
68
|
-
|
74
|
+
screenshot_and_raise "could not find view to scroll: '#{uiquery}', args: #{number}" if views_touched.empty?
|
69
75
|
views_touched
|
70
76
|
end
|
71
77
|
|
@@ -112,13 +118,13 @@ module Operations
|
|
112
118
|
end
|
113
119
|
|
114
120
|
if rotate_cmd.nil?
|
115
|
-
|
121
|
+
screenshot_and_raise "Does not support rotating #{dir} when home button is pointing #{@current_rotation}"
|
116
122
|
end
|
117
123
|
playback("rotate_#{rotate_cmd}")
|
118
124
|
end
|
119
125
|
|
120
126
|
def background(secs)
|
121
|
-
|
127
|
+
screenshot_and_raise "Not implemented yet"
|
122
128
|
end
|
123
129
|
|
124
130
|
def element_exists(uiquery)
|
@@ -165,7 +171,7 @@ module Operations
|
|
165
171
|
elsif (File.exists?("#{DATA_PATH}/resources/#{recording}"))
|
166
172
|
data = File.read("#{DATA_PATH}/resources/#{recording}")
|
167
173
|
else
|
168
|
-
|
174
|
+
screenshot_and_raise "Playback not found: #{recording} (searched for #{recording} in #{Dir.pwd}, #{rec_dir}, #{DATA_PATH}/resources"
|
169
175
|
end
|
170
176
|
data
|
171
177
|
end
|
@@ -183,7 +189,7 @@ module Operations
|
|
183
189
|
|
184
190
|
res = JSON.parse( res )
|
185
191
|
if res['outcome'] != 'SUCCESS'
|
186
|
-
|
192
|
+
screenshot_and_raise "playback failed because: #{res['reason']}\n#{res['details']}"
|
187
193
|
end
|
188
194
|
res['results']
|
189
195
|
end
|
@@ -247,7 +253,7 @@ module Operations
|
|
247
253
|
{:query => query, :operation => operation_map})
|
248
254
|
res = JSON.parse(res)
|
249
255
|
if res['outcome'] != 'SUCCESS'
|
250
|
-
|
256
|
+
screenshot_and_raise "map #{query}, #{method_name} failed because: #{res['reason']}\n#{res['details']}"
|
251
257
|
end
|
252
258
|
|
253
259
|
res['results']
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: calabash-cucumber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-01-
|
12
|
+
date: 2012-01-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cucumber
|
16
|
-
requirement: &
|
16
|
+
requirement: &70312339656540 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70312339656540
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &70312339655440 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 2.7.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70312339655440
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: json
|
38
|
-
requirement: &
|
38
|
+
requirement: &70312339654480 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,21 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70312339654480
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: slowhandcuke
|
49
|
+
requirement: &70312339644820 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *70312339644820
|
47
58
|
- !ruby/object:Gem::Dependency
|
48
59
|
name: net-http-persistent
|
49
|
-
requirement: &
|
60
|
+
requirement: &70312339644160 !ruby/object:Gem::Requirement
|
50
61
|
none: false
|
51
62
|
requirements:
|
52
63
|
- - ! '>='
|
@@ -54,7 +65,7 @@ dependencies:
|
|
54
65
|
version: '0'
|
55
66
|
type: :runtime
|
56
67
|
prerelease: false
|
57
|
-
version_requirements: *
|
68
|
+
version_requirements: *70312339644160
|
58
69
|
description: calabash-cucumber drives tests for native iOS apps. You must link your
|
59
70
|
app with calabash-ios-server framework to execute tests.
|
60
71
|
email:
|