run_loop 2.2.0 → 2.2.1
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 +4 -4
- data/lib/run_loop/core.rb +4 -4
- data/lib/run_loop/core_simulator.rb +6 -2
- data/lib/run_loop/device.rb +5 -1
- data/lib/run_loop/device_agent/Frameworks.zip +0 -0
- data/lib/run_loop/device_agent/app/DeviceAgent-Runner.app.zip +0 -0
- data/lib/run_loop/device_agent/bin/iOSDeviceManager +0 -0
- data/lib/run_loop/device_agent/client.rb +27 -0
- data/lib/run_loop/device_agent/ipa/DeviceAgent-Runner.app.zip +0 -0
- data/lib/run_loop/version.rb +1 -1
- data/lib/run_loop/xcode.rb +15 -0
- metadata +13 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7f70f23c16823815e9b01ca4e967dcd8f065d4ff
|
4
|
+
data.tar.gz: 2d2b303201f7d2961dbb4a9f8947a2ab0638de3b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2343195435e906556bfe720b75f66637a42b29e4f8aea669584793ad4a668002151210c75ac96d2856afd1b1aee3800afa255d1ec2a5cd0e79ce3e5709683adc
|
7
|
+
data.tar.gz: eea4a57f853d15eedfad0c710f889e5896dfa046ac45e7d4114df1c889f98a6d78cfc32948ebda371e48a26a726f756fbae4275812a13f48aa6b93a1815e2b16
|
data/lib/run_loop/core.rb
CHANGED
@@ -316,14 +316,14 @@ Logfile: #{log_file}
|
|
316
316
|
# Returns the a default simulator to target. This default needs to be one
|
317
317
|
# that installed by default in the current Xcode version.
|
318
318
|
#
|
319
|
-
# For historical reasons, the most recent non-64b SDK should be used.
|
320
|
-
#
|
321
319
|
# @param [RunLoop::Xcode] xcode Used to detect the current xcode
|
322
320
|
# version.
|
323
321
|
def self.default_simulator(xcode=RunLoop::Xcode.new)
|
324
322
|
|
325
|
-
if xcode.
|
326
|
-
"iPhone
|
323
|
+
if xcode.version_gte_81?
|
324
|
+
"iPhone 7 (10.1)"
|
325
|
+
elsif xcode.version_gte_8?
|
326
|
+
"iPhone 7 (10.0)"
|
327
327
|
elsif xcode.version_gte_73?
|
328
328
|
"iPhone 6s (9.3)"
|
329
329
|
elsif xcode.version_gte_72?
|
@@ -596,8 +596,12 @@ Command had no output
|
|
596
596
|
timeout = DEFAULT_OPTIONS[:install_app_timeout]
|
597
597
|
simctl.install(device, app, timeout)
|
598
598
|
|
599
|
-
#
|
600
|
-
#
|
599
|
+
# On Xcode 7, we must wait. The app might not be installed otherwise. This
|
600
|
+
# is particularly true for iPads where the app bundle is installed, but
|
601
|
+
# SpringBoard does not detect the app has been installed.
|
602
|
+
#
|
603
|
+
# On Xcode 8, more testing is needed.
|
604
|
+
device.simulator_wait_for_stable_state
|
601
605
|
installed_app_bundle_dir
|
602
606
|
end
|
603
607
|
|
data/lib/run_loop/device.rb
CHANGED
@@ -341,6 +341,8 @@ version: #{version}
|
|
341
341
|
# the app and data container exists, but Springboard does not detect them.
|
342
342
|
#
|
343
343
|
# 6. 1 and 2 must hold for 1.5 seconds.
|
344
|
+
#
|
345
|
+
# TODO needs update for Xcode 8 + iOS 10 simulators.
|
344
346
|
def simulator_wait_for_stable_state
|
345
347
|
|
346
348
|
# How long to wait between stability checks.
|
@@ -374,7 +376,9 @@ version: #{version}
|
|
374
376
|
# iOS 9 simulators have an additional boot screen.
|
375
377
|
is_gte_ios9 = version >= RunLoop::Version.new('9.0')
|
376
378
|
|
377
|
-
# iOS 9 iPad simulators need additional time to stabilize
|
379
|
+
# iOS 9 iPad simulators need additional time to stabilize, especially
|
380
|
+
# to ensure that `simctl install` notifies SpringBoard that a new app
|
381
|
+
# has been installed.
|
378
382
|
is_ipad = simulator_is_ipad?
|
379
383
|
|
380
384
|
timeout = SIM_STABLE_STATE_OPTIONS[:timeout]
|
Binary file
|
Binary file
|
Binary file
|
@@ -1359,6 +1359,33 @@ Valid values are: :down, :up, :right, :left, :bottom, :top
|
|
1359
1359
|
end
|
1360
1360
|
end
|
1361
1361
|
|
1362
|
+
# @!visibility private
|
1363
|
+
# Private method. Do not call.
|
1364
|
+
# Flattens the result of `tree`.
|
1365
|
+
def _flatten_tree
|
1366
|
+
result = []
|
1367
|
+
_flatten_tree_helper(tree, result)
|
1368
|
+
result
|
1369
|
+
end
|
1370
|
+
|
1371
|
+
# @!visibility private
|
1372
|
+
# Private method. Do not call.
|
1373
|
+
def _flatten_tree_helper(tree, accumulator_array)
|
1374
|
+
element_in_tree = {}
|
1375
|
+
tree.each_pair do |key, value|
|
1376
|
+
if key != "children"
|
1377
|
+
element_in_tree[key] = value
|
1378
|
+
end
|
1379
|
+
end
|
1380
|
+
accumulator_array.push(element_in_tree)
|
1381
|
+
|
1382
|
+
if tree.key?("children")
|
1383
|
+
tree["children"].each do |subtree|
|
1384
|
+
_flatten_tree_helper(subtree, accumulator_array)
|
1385
|
+
end
|
1386
|
+
end
|
1387
|
+
end
|
1388
|
+
|
1362
1389
|
# @!visibility private
|
1363
1390
|
# Private method. Do not call.
|
1364
1391
|
def _dismiss_springboard_alerts
|
Binary file
|
data/lib/run_loop/version.rb
CHANGED
data/lib/run_loop/xcode.rb
CHANGED
@@ -24,6 +24,14 @@ module RunLoop
|
|
24
24
|
to_s
|
25
25
|
end
|
26
26
|
|
27
|
+
# Returns a version instance for `Xcode 8.1`; used to check for the
|
28
|
+
# availability of features and paths to various items on the filesystem.
|
29
|
+
#
|
30
|
+
# @return [RunLoop::Version] 8.1
|
31
|
+
def v81
|
32
|
+
fetch_version(:v81)
|
33
|
+
end
|
34
|
+
|
27
35
|
# Returns a version instance for `Xcode 8.0`; used to check for the
|
28
36
|
# availability of features and paths to various items on the filesystem.
|
29
37
|
#
|
@@ -120,6 +128,13 @@ module RunLoop
|
|
120
128
|
fetch_version(:v50)
|
121
129
|
end
|
122
130
|
|
131
|
+
# Is the active Xcode version 8.1 or above?
|
132
|
+
#
|
133
|
+
# @return [Boolean] `true` if the current Xcode version is >= 8.0
|
134
|
+
def version_gte_81?
|
135
|
+
version >= v81
|
136
|
+
end
|
137
|
+
|
123
138
|
# Is the active Xcode version 8.0 or above?
|
124
139
|
#
|
125
140
|
# @return [Boolean] `true` if the current Xcode version is >= 8.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: run_loop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Karl Krukow
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-09-
|
12
|
+
date: 2016-09-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
@@ -91,16 +91,22 @@ dependencies:
|
|
91
91
|
name: httpclient
|
92
92
|
requirement: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 2.7.1
|
97
|
+
- - "<"
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '3.0'
|
97
100
|
type: :runtime
|
98
101
|
prerelease: false
|
99
102
|
version_requirements: !ruby/object:Gem::Requirement
|
100
103
|
requirements:
|
101
|
-
- - "
|
104
|
+
- - ">="
|
102
105
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
106
|
+
version: 2.7.1
|
107
|
+
- - "<"
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '3.0'
|
104
110
|
- !ruby/object:Gem::Dependency
|
105
111
|
name: i18n
|
106
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -406,7 +412,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
406
412
|
version: '0'
|
407
413
|
requirements: []
|
408
414
|
rubyforge_project:
|
409
|
-
rubygems_version: 2.
|
415
|
+
rubygems_version: 2.6.6
|
410
416
|
signing_key:
|
411
417
|
specification_version: 4
|
412
418
|
summary: The bridge between Calabash iOS and Xcode command-line tools like instruments
|