calabash-cucumber 0.9.116 → 0.9.117

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/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- calabash-cucumber (0.9.115)
4
+ calabash-cucumber (0.9.117)
5
5
  CFPropertyList
6
6
  bundler (~> 1.1)
7
7
  cucumber
data/bin/calabash-ios CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ require 'rubygems'
3
4
  require 'fileutils'
4
5
  require 'cfpropertylist'
5
6
  require 'rexml/document'
@@ -230,7 +230,7 @@ Then /^I pinch to zoom (in|out) on "([^\"]*)"$/ do |in_out, name|
230
230
  sleep(STEP_PAUSE)
231
231
  end
232
232
 
233
- # Note "up/left/right" seems to be missing on the web page
233
+ # Note "up/left/right" seems to be missing on the web base
234
234
  Then /^I scroll (left|right|up|down)$/ do |dir|
235
235
  scroll("scrollView index:0", dir)
236
236
  sleep(STEP_PAUSE)
@@ -0,0 +1,37 @@
1
+ require 'calabash-cucumber/core'
2
+ require 'calabash-cucumber/operations'
3
+
4
+ class Calabash::IBase
5
+ include Calabash::Cucumber::Operations
6
+
7
+ def initialize(world)
8
+ @world = world
9
+ end
10
+
11
+ def embed(*args)
12
+ @world.send(:embed,*args)
13
+ end
14
+
15
+ def puts(*args)
16
+ @world.send(:puts, *args)
17
+ end
18
+
19
+ def trait
20
+ "navigationItemView marked:'#{self.title}'"
21
+ end
22
+
23
+ def base(clz,*args)
24
+ clz.new(@world,*args)
25
+ end
26
+
27
+ def await(opts={})
28
+ wait_for_elements_exist([trait], opts)
29
+ self
30
+ end
31
+
32
+ def await_screenshot(wait_opts={},screenshot_opts={})
33
+ await(wait_opts)
34
+ screenshot_embed(screenshot_opts)
35
+ end
36
+
37
+ end
@@ -81,6 +81,11 @@ module Calabash
81
81
  end
82
82
  end
83
83
 
84
+ def await_keyboard
85
+ wait_for_elements_exist(["view:'UIKBKeyplaneView'"])
86
+ sleep(0.3)
87
+ end
88
+
84
89
  def keyboard_enter_text(text)
85
90
  fail("No visible keyboard") if element_does_not_exist("view:'UIKBKeyplaneView'")
86
91
 
@@ -27,6 +27,15 @@ module Calabash
27
27
  include Calabash::Cucumber::Location
28
28
 
29
29
 
30
+
31
+ def page(clz,*args)
32
+ clz.new(self,*args)
33
+ end
34
+
35
+ def await_page(clz,*args)
36
+ clz.new(self,*args).await
37
+ end
38
+
30
39
  def home_direction
31
40
  @current_rotation = @current_rotation || :down
32
41
  end
@@ -1,6 +1,6 @@
1
1
  module Calabash
2
2
  module Cucumber
3
- VERSION = "0.9.116"
4
- FRAMEWORK_VERSION = "0.9.115"
3
+ VERSION = "0.9.117"
4
+ FRAMEWORK_VERSION = "0.9.117"
5
5
  end
6
6
  end
@@ -49,6 +49,11 @@ module Calabash
49
49
 
50
50
  def wait_poll(opts, &block)
51
51
  test = opts[:until]
52
+ if test.nil?
53
+ cond = opts[:until_exists]
54
+ raise "Must provide :until or :until_exists" unless cond
55
+ test = lambda { element_exists(cond) }
56
+ end
52
57
  wait_for(opts) do
53
58
  if test.call()
54
59
  true
@@ -109,6 +114,7 @@ module Calabash
109
114
  end
110
115
 
111
116
  def wait_for_none_animating(options = {})
117
+ #sleep(0.3)
112
118
  options[:condition] = CALABASH_CONDITIONS[:none_animating]
113
119
  wait_for_condition(options)
114
120
  end
metadata CHANGED
@@ -1,151 +1,153 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: calabash-cucumber
3
- version: !ruby/object:Gem::Version
4
- hash: 211
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.9.117
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 9
9
- - 116
10
- version: 0.9.116
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Karl Krukow
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-10-23 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2012-11-01 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: cucumber
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 3
29
- segments:
30
- - 0
31
- version: "0"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
32
22
  type: :runtime
33
- version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: json
36
23
  prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: json
32
+ requirement: !ruby/object:Gem::Requirement
38
33
  none: false
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- hash: 3
43
- segments:
44
- - 0
45
- version: "0"
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
46
38
  type: :runtime
47
- version_requirements: *id002
48
- - !ruby/object:Gem::Dependency
49
- name: CFPropertyList
50
39
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: CFPropertyList
48
+ requirement: !ruby/object:Gem::Requirement
52
49
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- hash: 3
57
- segments:
58
- - 0
59
- version: "0"
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
60
54
  type: :runtime
61
- version_requirements: *id003
62
- - !ruby/object:Gem::Dependency
63
- name: sim_launcher
64
55
  prerelease: false
65
- requirement: &id004 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
66
57
  none: false
67
- requirements:
68
- - - "="
69
- - !ruby/object:Gem::Version
70
- hash: 3
71
- segments:
72
- - 0
73
- - 4
74
- - 6
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: sim_launcher
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - '='
68
+ - !ruby/object:Gem::Version
75
69
  version: 0.4.6
76
70
  type: :runtime
77
- version_requirements: *id004
78
- - !ruby/object:Gem::Dependency
79
- name: slowhandcuke
80
71
  prerelease: false
81
- requirement: &id005 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
82
73
  none: false
83
- requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- hash: 3
87
- segments:
88
- - 0
89
- version: "0"
74
+ requirements:
75
+ - - '='
76
+ - !ruby/object:Gem::Version
77
+ version: 0.4.6
78
+ - !ruby/object:Gem::Dependency
79
+ name: slowhandcuke
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
90
86
  type: :runtime
91
- version_requirements: *id005
92
- - !ruby/object:Gem::Dependency
93
- name: location-one
94
87
  prerelease: false
95
- requirement: &id006 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
96
89
  none: false
97
- requirements:
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: location-one
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
98
99
  - - ~>
99
- - !ruby/object:Gem::Version
100
- hash: 15
101
- segments:
102
- - 0
103
- - 0
104
- - 8
100
+ - !ruby/object:Gem::Version
105
101
  version: 0.0.8
106
102
  type: :runtime
107
- version_requirements: *id006
108
- - !ruby/object:Gem::Dependency
109
- name: httpclient
110
103
  prerelease: false
111
- requirement: &id007 !ruby/object:Gem::Requirement
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 0.0.8
110
+ - !ruby/object:Gem::Dependency
111
+ name: httpclient
112
+ requirement: !ruby/object:Gem::Requirement
112
113
  none: false
113
- requirements:
114
- - - "="
115
- - !ruby/object:Gem::Version
116
- hash: 9
117
- segments:
118
- - 2
119
- - 2
120
- - 7
114
+ requirements:
115
+ - - '='
116
+ - !ruby/object:Gem::Version
121
117
  version: 2.2.7
122
118
  type: :runtime
123
- version_requirements: *id007
124
- - !ruby/object:Gem::Dependency
125
- name: bundler
126
119
  prerelease: false
127
- requirement: &id008 !ruby/object:Gem::Requirement
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - '='
124
+ - !ruby/object:Gem::Version
125
+ version: 2.2.7
126
+ - !ruby/object:Gem::Dependency
127
+ name: bundler
128
+ requirement: !ruby/object:Gem::Requirement
128
129
  none: false
129
- requirements:
130
+ requirements:
130
131
  - - ~>
131
- - !ruby/object:Gem::Version
132
- hash: 13
133
- segments:
134
- - 1
135
- - 1
136
- version: "1.1"
132
+ - !ruby/object:Gem::Version
133
+ version: '1.1'
137
134
  type: :runtime
138
- version_requirements: *id008
139
- description: calabash-cucumber drives tests for native iOS apps. You must link your app with calabash-ios-server framework to execute tests.
140
- email:
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ~>
140
+ - !ruby/object:Gem::Version
141
+ version: '1.1'
142
+ description: calabash-cucumber drives tests for native iOS apps. You must link your
143
+ app with calabash-ios-server framework to execute tests.
144
+ email:
141
145
  - karl@lesspainful.com
142
- executables:
146
+ executables:
143
147
  - calabash-ios
144
148
  extensions: []
145
-
146
149
  extra_rdoc_files: []
147
-
148
- files:
150
+ files:
149
151
  - .gitignore
150
152
  - CHANGES.txt
151
153
  - Gemfile
@@ -177,6 +179,7 @@ files:
177
179
  - lib/calabash-cucumber/calabash_steps.rb
178
180
  - lib/calabash-cucumber/core.rb
179
181
  - lib/calabash-cucumber/cucumber.rb
182
+ - lib/calabash-cucumber/ibase.rb
180
183
  - lib/calabash-cucumber/keyboard_helpers.rb
181
184
  - lib/calabash-cucumber/launch/simulator_helper.rb
182
185
  - lib/calabash-cucumber/location.rb
@@ -264,36 +267,27 @@ files:
264
267
  - scripts/reset_simulator.scpt
265
268
  homepage: http://calaba.sh
266
269
  licenses: []
267
-
268
270
  post_install_message:
269
271
  rdoc_options: []
270
-
271
- require_paths:
272
+ require_paths:
272
273
  - lib
273
- required_ruby_version: !ruby/object:Gem::Requirement
274
+ required_ruby_version: !ruby/object:Gem::Requirement
274
275
  none: false
275
- requirements:
276
- - - ">="
277
- - !ruby/object:Gem::Version
278
- hash: 3
279
- segments:
280
- - 0
281
- version: "0"
282
- required_rubygems_version: !ruby/object:Gem::Requirement
276
+ requirements:
277
+ - - ! '>='
278
+ - !ruby/object:Gem::Version
279
+ version: '0'
280
+ required_rubygems_version: !ruby/object:Gem::Requirement
283
281
  none: false
284
- requirements:
285
- - - ">="
286
- - !ruby/object:Gem::Version
287
- hash: 3
288
- segments:
289
- - 0
290
- version: "0"
282
+ requirements:
283
+ - - ! '>='
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
291
286
  requirements: []
292
-
293
287
  rubyforge_project:
294
- rubygems_version: 1.8.24
288
+ rubygems_version: 1.8.23
295
289
  signing_key:
296
290
  specification_version: 3
297
291
  summary: Client for calabash-ios-server for automated functional testing on iOS
298
- test_files:
292
+ test_files:
299
293
  - features/step_definitions/calabash_steps.rb