calabash-cucumber 0.16.1 → 0.16.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f501008ee0e1a3152d8b681c2a6ccc5463a14057
4
- data.tar.gz: 09c4bf7340eeb0f0b4ea96f1db3f477f829a68e0
3
+ metadata.gz: e84d4389afc2bd91cbdba73ecbee008b9e3bf89d
4
+ data.tar.gz: 221280823e7a79963e87dc3c429eab6480f1e2f6
5
5
  SHA512:
6
- metadata.gz: 2bd0c0c774158fd2e8d3789b45a816ecf90b1073e17710c2f5869460fccc9ac8eb75e040c1d21ea84671cce24666467af8afc9e93c84f742a6e89f137ae7c6f0
7
- data.tar.gz: 7b8e3efec441d1af9e46352c136b0ed95a7b875a29f04a1827ec6e62062a15e7d6ab08dac6709b0a930ca1f526236e5c0ec3098b793cfa927892bb3be8e7bd38
6
+ metadata.gz: 64384eb9d28415ac608f3e840159e8c051d6be5b11ece9e85b9a983aed8dfb5a9209d2ac7c2e873a6728cc882e74ca59a06b2da57ea921893af2fdb5e299dbff
7
+ data.tar.gz: cf001fb580c891bfbe8e6c1789ad9232d5e221b93e1d4caff370e9f25c7f849a4125d16e58f1e2829b4a332f50509d60b04bc588da042a5f0287e8c62fae567e
Binary file
@@ -7,10 +7,6 @@ module Calabash
7
7
  # Device encapsulates information about the device or simulator that the
8
8
  # app is running on. It also includes the following information about the
9
9
  # app that is running on the current device.
10
- #
11
- # * The version of the embedded Calabash server.
12
- # * Whether or not the app is an iPhone-only app that is being emulated on
13
- # an iPad.
14
10
  class Device
15
11
 
16
12
  include Calabash::Cucumber::Logging
@@ -68,24 +64,6 @@ module Calabash
68
64
  # @return [String] the version of the iOS that is running on this device
69
65
  attr_reader :ios_version
70
66
 
71
- # The hardware architecture of this device. Also known as the chip set.
72
- #
73
- # @example
74
- # # simulator
75
- # i386
76
- # x86_64
77
- #
78
- # @example
79
- # # examples from physical devices
80
- # armv6
81
- # armv7s
82
- # arm64
83
- #
84
- # @attribute [r] system
85
- # @return [String] the hardware architecture of this device.
86
- # this device.
87
- attr_reader :system
88
-
89
67
  # The version of the embedded Calabash server that is running in the
90
68
  # app under test on this device.
91
69
  #
@@ -117,7 +95,8 @@ module Calabash
117
95
  # * iphone 3.5in
118
96
  # * iphone 6
119
97
  # * iphone 6+
120
- # * "" # if no information can be found.
98
+ # * ipad pro
99
+ # * unknown
121
100
  attr_reader :form_factor
122
101
 
123
102
  # For Calabash server version > 0.10.2 provides
@@ -136,16 +115,25 @@ module Calabash
136
115
  # @return [Hash] screen dimensions, scale and down/up sampling fraction.
137
116
  attr_reader :screen_dimensions
138
117
 
139
- # @deprecated 0.13.1 no replacement
140
- # Indicates whether or not this device has a 4in screen.
141
- # @attribute [r] iphone_4in
142
- # @return [Boolean] `true` if this device has a 4in screen.
143
- attr_reader :iphone_4in
118
+ # Requires calabash server > 0.16.2
119
+ #
120
+ # * iPhone7,1
121
+ # * iPhone5,2
122
+ # * iPad6,1
123
+ # * iPad6,8
124
+ #
125
+ # @attribute [r] model_identifier
126
+ # @return [String] The low-level model identifier.
127
+ attr_reader :model_identifier
144
128
 
145
- # @deprecated 0.10.0 no replacement
146
- # @!attribute [rw] udid
147
- # @return [String] The udid of this device.
148
- attr_accessor :udid
129
+ # Requires calabash server > 0.16.2
130
+ #
131
+ # For simulators, this is known to return '< form factor > Simulator'
132
+ #
133
+ # For devices, this will return the name of the device as seen in Xcode.
134
+ #
135
+ # @attribute [r] device_name
136
+ attr_reader :device_name
149
137
 
150
138
  # Creates a new instance of Device.
151
139
  #
@@ -155,14 +143,21 @@ module Calabash
155
143
  # @param [Hash] version_data the output of the `server_version` function
156
144
  # @return [Device] a new Device instance
157
145
  def initialize (endpoint, version_data)
158
- simulator_device = version_data['simulator_device']
159
146
  @endpoint = endpoint
160
- @system = version_data['system']
161
- @device_family = @system.eql?(GESTALT_SIM_SYS) ? simulator_device : @system.split(/[\d,.]/).first
147
+ @model_identifier = version_data['model_identifier']
162
148
  @simulator_details = version_data['simulator']
163
- @ios_version = version_data['iOS_version']
149
+ @ios_version = version_data['ios_version']
164
150
  @server_version = version_data['version']
165
151
  @iphone_app_emulated_on_ipad = version_data['iphone_app_emulated_on_ipad']
152
+ @form_factor = version_data['form_factor']
153
+ @device_name = version_data['device_name']
154
+
155
+ family = version_data['device_family']
156
+ if family
157
+ @device_family = family.split(' ').first
158
+ end
159
+
160
+ # Available 0.10.2
166
161
  screen_dimensions = version_data['screen_dimensions']
167
162
  if screen_dimensions
168
163
  @screen_dimensions = {}
@@ -170,7 +165,25 @@ module Calabash
170
165
  @screen_dimensions[key.to_sym] = val
171
166
  end
172
167
  end
173
- @form_factor = version_data['form_factor']
168
+
169
+ # Deprecated 0.16.2 server
170
+ @system = version_data['system']
171
+
172
+ # 0.16.2 server adds 'device_family' key.
173
+ unless @device_family
174
+ # Deprecated 0.16.2 server
175
+ simulator_device = version_data['simulator_device']
176
+ if @system == GESTALT_SIM_SYS
177
+ @device_family = simulator_device
178
+ else
179
+ @device_family = @system.split(/[\d,.]/).first
180
+ end
181
+ end
182
+
183
+ # 0.16.2 server adds 'ios_version' key
184
+ unless @ios_version
185
+ @ios_version = version_data['iOS_version']
186
+ end
174
187
 
175
188
  # Deprecated 0.13.0
176
189
  @iphone_4in = version_data['4inch']
@@ -179,7 +192,12 @@ module Calabash
179
192
  # Is this device a simulator or physical device?
180
193
  # @return [Boolean] true if this device is a simulator
181
194
  def simulator?
182
- system.eql?(GESTALT_SIM_SYS)
195
+ # Post 0.16.2 server
196
+ if simulator_details
197
+ true
198
+ else
199
+ system == GESTALT_SIM_SYS
200
+ end
183
201
  end
184
202
 
185
203
  # Is this device a device or simulator?
@@ -230,48 +248,46 @@ module Calabash
230
248
  form_factor == 'iphone 3.5in'
231
249
  end
232
250
 
233
- # @!visibility private
234
- def version_hash (version_str)
235
- tokens = version_str.split(/[,.]/)
236
- {:major_version => tokens[0],
237
- :minor_version => tokens[1],
238
- :bug_version => tokens[2]}
251
+ # Is this device an iPad Pro?
252
+ # @return [Boolean] true if this device is an iPad Pro
253
+ def ipad_pro?
254
+ form_factor == 'ipad pro'
239
255
  end
240
256
 
241
257
  # The major iOS version of this device.
242
258
  # @return [String] the major version of the OS
243
259
  def ios_major_version
244
- version_hash(ios_version)[:major_version]
260
+ ios_version_object.major.to_s
245
261
  end
246
262
 
247
263
  # Is this device running iOS 9?
248
264
  # @return [Boolean] true if the major version of the OS is 9
249
265
  def ios9?
250
- ios_major_version == '9'
266
+ ios_version_object.major == 9
251
267
  end
252
268
 
253
269
  # Is this device running iOS 8?
254
270
  # @return [Boolean] true if the major version of the OS is 8
255
271
  def ios8?
256
- ios_major_version.eql?('8')
272
+ ios_version_object.major == 8
257
273
  end
258
274
 
259
275
  # Is this device running iOS 7?
260
276
  # @return [Boolean] true if the major version of the OS is 7
261
277
  def ios7?
262
- ios_major_version.eql?('7')
278
+ ios_version_object.major == 7
263
279
  end
264
280
 
265
281
  # Is this device running iOS 6?
266
282
  # @return [Boolean] true if the major version of the OS is 6
267
283
  def ios6?
268
- ios_major_version.eql?('6')
284
+ ios_version_object.major == 6
269
285
  end
270
286
 
271
287
  # Is this device running iOS 5?
272
288
  # @return [Boolean] true if the major version of the OS is 5
273
289
  def ios5?
274
- ios_major_version.eql?('5')
290
+ ios_version_object.major == 5
275
291
  end
276
292
 
277
293
  # @deprecated 0.11.2 Replaced with screen_dimensions.
@@ -298,9 +314,12 @@ module Calabash
298
314
  iphone_app_emulated_on_ipad
299
315
  end
300
316
 
317
+ # @deprecated 0.9.169 replaced with `server_version`
318
+ #
319
+ # @see #server_version
320
+ #
301
321
  # The version of the embedded Calabash server running in the app under
302
322
  # test on this device.
303
- # @deprecated 0.9.169 replaced with `server_version`
304
323
  # @see #server_version
305
324
  # @return [String] the version of the embedded Calabash server
306
325
  def framework_version
@@ -321,7 +340,9 @@ module Calabash
321
340
  end
322
341
 
323
342
  # @deprecated 0.9.168 replaced with iphone_4in?
343
+ #
324
344
  # @see #iphone_4in?
345
+ #
325
346
  # Is this device an iPhone 5?
326
347
  # @note Deprecated because the iPhone 5S reports as an iPhone6,*.
327
348
  # @return [Boolean] true if this device is an iPhone 5
@@ -331,13 +352,52 @@ module Calabash
331
352
  end
332
353
 
333
354
  # @deprecated 0.13.1 - Call `iphone_4in?` instead.
355
+ #
334
356
  # @see #iphone_4in?
357
+ #
335
358
  # @note Deprecated after introducing new `form_factor` behavior.
336
359
  # @return [Boolean] true if this device is an iPhone 5 or 5s
337
360
  def iphone_4in
338
361
  _deprecated('0.13.1', "use 'iphone_4in?' instead", :warn)
339
362
  @iphone_4in
340
363
  end
364
+
365
+ # @deprecated 0.16.2 No replacement.
366
+ #
367
+ # @example
368
+ # # simulator
369
+ # i386
370
+ # x86_64
371
+ #
372
+ # @example
373
+ # # examples from physical devices
374
+ # iPhone7,1
375
+ # iPhone5,2
376
+ #
377
+ # @attribute [r] system
378
+ # @return [String] The model of this device.
379
+ # this device.
380
+ attr_reader :system
381
+
382
+ # @deprecated 0.13.1 no replacement
383
+ #
384
+ # Indicates whether or not this device has a 4in screen.
385
+ # @attribute [r] iphone_4in
386
+ # @return [Boolean] `true` if this device has a 4in screen.
387
+ attr_reader :iphone_4in
388
+
389
+ # @deprecated 0.10.0 no replacement
390
+ #
391
+ # @!attribute [rw] udid
392
+ # @return [String] The udid of this device.
393
+ attr_accessor :udid
394
+
395
+ private
396
+
397
+ # @!visibility private
398
+ def ios_version_object
399
+ @ios_version_object ||= RunLoop::Version.new(ios_version)
400
+ end
341
401
  end
342
402
  end
343
403
  end
@@ -78,6 +78,14 @@ module Calabash
78
78
  _default_device_or_create.ipod?
79
79
  end
80
80
 
81
+ # Is the device under test an iPad Pro
82
+ #
83
+ # @raise [RuntimeError] If the server cannot be reached.
84
+ # @return [Boolean] true if device under test is an iPod.
85
+ def ipad_pro?
86
+ _default_device_or_create.ipad_pro?
87
+ end
88
+
81
89
  # Is the device under test an iPhone or iPod?
82
90
  #
83
91
  # @raise [RuntimeError] If the server cannot be reached.
@@ -10,6 +10,7 @@ module Calabash
10
10
  include Calabash::Cucumber::Logging
11
11
 
12
12
  # @!visibility private
13
+ # @deprecated 0.16.1
13
14
  def rotation_candidates
14
15
  %w(rotate_left_home_down rotate_left_home_left rotate_left_home_right rotate_left_home_up
15
16
  rotate_right_home_down rotate_right_home_left rotate_right_home_right rotate_right_home_up)
@@ -44,7 +45,7 @@ module Calabash
44
45
  # @note This method generates verbose messages when full console logging
45
46
  # is enabled. See {Calabash::Cucumber::Logging#full_console_logging?}.
46
47
  #
47
- # @param [Symbol] dir The position of the home button after the rotation.
48
+ # @param [Symbol] direction The position of the home button after the rotation.
48
49
  # Can be one of `{:down | :left | :right | :up }`.
49
50
  #
50
51
  # @note A rotation will only occur if your view controller and application
@@ -52,117 +53,215 @@ module Calabash
52
53
  #
53
54
  # @return [Symbol] The position of the home button relative to the status
54
55
  # bar when all rotations have been completed.
55
- def rotate_home_button_to(dir)
56
- dir_sym = dir.to_sym
57
- if dir_sym.eql?(:top)
58
- if full_console_logging?
59
- calabash_warn "converting '#{dir}' to ':up' - please adjust your code"
60
- end
61
- dir_sym = :up
56
+ def rotate_home_button_to(direction)
57
+
58
+ begin
59
+ as_symbol = ensure_valid_rotate_home_to_arg(direction)
60
+ rescue ArgumentError => e
61
+ raise ArgumentError, e.message
62
62
  end
63
63
 
64
- if dir_sym.eql?(:bottom)
65
- if full_console_logging?
66
- calabash_warn "converting '#{dir}' to ':down' - please adjust your code"
67
- end
68
- dir_sym = :down
64
+ current_orientation = status_bar_orientation.to_sym
65
+
66
+ return current_orientation if current_orientation == as_symbol
67
+
68
+ rotate_to_uia_orientation(as_symbol)
69
+ recalibrate_after_rotation
70
+ status_bar_orientation.to_sym
71
+ end
72
+
73
+ # Rotates the device in the direction indicated by `direction`.
74
+ #
75
+ # @example rotate left
76
+ # rotate :left
77
+ #
78
+ # @example rotate right
79
+ # rotate :right
80
+ #
81
+ # @param [Symbol] direction The direction to rotate. Can be :left or :right.
82
+ #
83
+ # @return [Symbol] The position of the home button relative to the status
84
+ # bar after the rotation. Will be one of `{:down | :left | :right | :up }`.
85
+ # @raise [ArgumentError] If direction is not :left or :right.
86
+ def rotate(direction)
87
+
88
+ as_symbol = direction.to_sym
89
+
90
+ if as_symbol != :left && as_symbol != :right
91
+ raise ArgumentError,
92
+ "Expected '#{direction}' to be :left or :right"
69
93
  end
70
94
 
71
- directions = [:down, :up, :left, :right]
72
- unless directions.include?(dir_sym)
73
- screenshot_and_raise "expected one of '#{directions}' as an arg to 'rotate_home_button_to but found '#{dir}'"
95
+ current_orientation = status_bar_orientation.to_sym
96
+
97
+ result = rotate_with_uia(as_symbol, current_orientation)
98
+
99
+ recalibrate_after_rotation
100
+
101
+ ap result if debug_logging?
102
+
103
+ status_bar_orientation
104
+ end
105
+
106
+ private
107
+
108
+ # @! visibility private
109
+ def recalibrate_after_rotation
110
+ uia_query :window
111
+ end
112
+
113
+ # @! visibility private
114
+ def ensure_valid_rotate_home_to_arg(arg)
115
+ coerced = arg.to_sym
116
+
117
+ if coerced == :top
118
+ coerced = :up
119
+ elsif coerced == :bottom
120
+ coerced = :down
74
121
  end
75
122
 
76
- res = status_bar_orientation()
77
- if res.nil?
78
- screenshot_and_raise "expected 'status_bar_orientation' to return a non-nil value"
79
- else
80
- res = res.to_sym
123
+ allowed = [:down, :up, :left, :right]
124
+ unless allowed.include?(coerced)
125
+ raise ArgumentError,
126
+ "Expected '#{arg}' to be :down, :up, :left, or :right"
81
127
  end
128
+ coerced
129
+ end
130
+
131
+ # @! visibility private
132
+ UIA_DEVICE_ORIENTATION = {
133
+ :portrait => 1,
134
+ :upside_down => 2,
135
+ :landscape_left => 3,
136
+ :landscape_right => 4
137
+ }.freeze
82
138
 
83
- return res if res.eql? dir_sym
139
+ # @! visibility private
140
+ # @deprecated 0.16.1
141
+ def rotate_home_button_to_position_with_playback(home_button_position)
84
142
 
85
- rotation_candidates.each { |candidate|
86
- if full_console_logging?
87
- puts "try to rotate to '#{dir_sym}' using '#{candidate}'"
143
+ rotation_candidates.each do |candidate|
144
+ if debug_logging?
145
+ calabash_info "Trying to rotate Home Button to '#{home_button_position}' using '#{candidate}'"
88
146
  end
147
+
89
148
  playback(candidate)
90
149
  sleep(0.4)
91
- recalibrate_after_rotation()
150
+ recalibrate_after_rotation
92
151
 
93
- res = status_bar_orientation
94
- if res.nil?
95
- screenshot_and_raise "expected 'status_bar_orientation' to return a non-nil value"
96
- else
97
- res = res.to_sym
152
+ current_orientation = status_bar_orientation.to_sym
153
+ if current_orientation == home_button_position
154
+ return current_orientation
98
155
  end
156
+ end
99
157
 
100
- return if res.eql? dir_sym
101
- }
102
-
103
- if full_console_logging?
104
- calabash_warn "Could not rotate home button to '#{dir}'."
105
- calabash_warn 'Is rotation enabled for this controller?'
106
- calabash_warn "Will return 'down'"
158
+ if debug_logging?
159
+ calabash_warn %Q{
160
+ Could not rotate Home Button to '#{home_button_position}'."
161
+ Is rotation enabled for this controller?}
107
162
  end
108
163
  :down
109
164
  end
110
165
 
111
- # Rotates the device in the direction indicated by `dir`.
112
- #
113
- # @example rotate left
114
- # rotate :left
115
- #
116
- # @example rotate right
117
- # rotate :right
118
- #
119
- # @param [Symbol] dir The direction to rotate. Can be :left or :right.
120
- #
121
- # @return [Symbol] The position of the home button relative to the status
122
- # bar after the rotation. Can be one of `{:down | :left | :right | :up }`.
123
- def rotate(dir)
124
- dir = dir.to_sym
125
- current_orientation = status_bar_orientation().to_sym
126
- rotate_cmd = nil
127
- case dir
166
+ # @! visibility private
167
+ def rotate_to_uia_orientation(orientation)
168
+ case orientation
169
+ when :down then key = :portrait
170
+ when :up then key = :upside_down
171
+ when :left then key = :landscape_right
172
+ when :right then key = :landscape_left
173
+ else
174
+ raise ArgumentError,
175
+ "Expected '#{orientation}' to be :left, :right, :up, or :down"
176
+ end
177
+ value = UIA_DEVICE_ORIENTATION[key]
178
+ cmd = "UIATarget.localTarget().setDeviceOrientation(#{value})"
179
+ uia(cmd)
180
+ end
181
+
182
+ # @! visibility private
183
+ def rotate_with_uia(direction, current_orientation)
184
+ key = uia_orientation_key(direction, current_orientation)
185
+ value = UIA_DEVICE_ORIENTATION[key]
186
+ cmd = "UIATarget.localTarget().setDeviceOrientation(#{value})"
187
+ uia(cmd)
188
+ end
189
+
190
+ # @! visibility private
191
+ def uia_orientation_key(direction, current_orientation)
192
+
193
+ key = nil
194
+ case direction
128
195
  when :left then
129
196
  if current_orientation == :down
130
- rotate_cmd = 'left_home_down'
197
+ key = :landscape_right
131
198
  elsif current_orientation == :right
132
- rotate_cmd = 'left_home_right'
199
+ key = :portrait
133
200
  elsif current_orientation == :left
134
- rotate_cmd = 'left_home_left'
201
+ key = :upside_down
135
202
  elsif current_orientation == :up
136
- rotate_cmd = 'left_home_up'
203
+ key = :landscape_left
137
204
  end
138
205
  when :right then
139
206
  if current_orientation == :down
140
- rotate_cmd = 'right_home_down'
141
- elsif current_orientation == :left
142
- rotate_cmd = 'right_home_left'
207
+ key = :landscape_left
143
208
  elsif current_orientation == :right
144
- rotate_cmd = 'right_home_right'
209
+ key = :upside_down
210
+ elsif current_orientation == :left
211
+ key = :portrait
145
212
  elsif current_orientation == :up
146
- rotate_cmd = 'right_home_up'
213
+ key = :landscape_right
147
214
  end
215
+ else
216
+ raise ArgumentError,
217
+ "Expected '#{direction}' to be :left or :right"
148
218
  end
219
+ key
220
+ end
149
221
 
150
- if rotate_cmd.nil?
151
- if full_console_logging?
152
- puts "Could not rotate device in direction '#{dir}' with orientation '#{current_orientation} - will do nothing"
153
- end
154
- else
155
- result = playback("rotate_#{rotate_cmd}")
156
- recalibrate_after_rotation
157
- result
222
+ # @! visibility private
223
+ # @deprecated 0.16.1
224
+ def recording_name(direction, current_orientation)
225
+ recording_name = nil
226
+ case direction
227
+ when :left then
228
+ if current_orientation == :down
229
+ recording_name = 'left_home_down'
230
+ elsif current_orientation == :right
231
+ recording_name = 'left_home_right'
232
+ elsif current_orientation == :left
233
+ recording_name = 'left_home_left'
234
+ elsif current_orientation == :up
235
+ recording_name = 'left_home_up'
236
+ end
237
+ when :right then
238
+ if current_orientation == :down
239
+ recording_name = 'right_home_down'
240
+ elsif current_orientation == :left
241
+ recording_name = 'right_home_left'
242
+ elsif current_orientation == :right
243
+ recording_name = 'right_home_right'
244
+ elsif current_orientation == :up
245
+ recording_name = 'right_home_up'
246
+ end
247
+ else
248
+ raise ArgumentError,
249
+ "Expected '#{direction}' to be 'left' or 'right'"
158
250
  end
251
+ "rotate_#{recording_name}"
159
252
  end
160
253
 
161
- def recalibrate_after_rotation
162
- uia_query :window
163
- end
254
+ # @! visibility private
255
+ # @deprecated 0.16.1
256
+ def rotate_with_playback(direction, current_orientation)
257
+ name = recording_name(direction, current_orientation)
164
258
 
259
+ if debug_logging?
260
+ puts "Could not rotate device '#{direction}' given '#{current_orientation}'; nothing to do."
261
+ end
165
262
 
263
+ playback(name)
264
+ end
166
265
  end
167
266
  end
168
267
  end
@@ -3,10 +3,10 @@ module Calabash
3
3
 
4
4
  # @!visibility public
5
5
  # The Calabash iOS gem version.
6
- VERSION = '0.16.1'
6
+ VERSION = '0.16.2'
7
7
 
8
8
  # @!visibility public
9
9
  # The minimum required version of the Calabash embedded server.
10
- MIN_SERVER_VERSION = '0.16.1'
10
+ MIN_SERVER_VERSION = '0.16.2'
11
11
  end
12
12
  end
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: calabash-cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.1
4
+ version: 0.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karl Krukow
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-14 00:00:00.000000000 Z
11
+ date: 2015-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -146,7 +146,7 @@ dependencies:
146
146
  requirements:
147
147
  - - ">="
148
148
  - !ruby/object:Gem::Version
149
- version: 1.5.3
149
+ version: 1.5.4
150
150
  - - "<"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '2.0'
@@ -156,7 +156,7 @@ dependencies:
156
156
  requirements:
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: 1.5.3
159
+ version: 1.5.4
160
160
  - - "<"
161
161
  - !ruby/object:Gem::Version
162
162
  version: '2.0'