fastlane-plugin-test_center 3.8.0.parallelizing.beta.3 → 3.8.0.parallelizing.beta.4
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/README.md +1 -1
- data/lib/fastlane/plugin/test_center/actions/multi_scan.rb +7 -1
- data/lib/fastlane/plugin/test_center/actions/tests_from_xctestrun.rb +1 -1
- data/lib/fastlane/plugin/test_center/helper/multi_scan_manager/retrying_scan_helper.rb +3 -11
- data/lib/fastlane/plugin/test_center/helper/multi_scan_manager/runner.rb +13 -2
- data/lib/fastlane/plugin/test_center/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a648ab034eb7f0efa4c6ecfc009e91ad1edb2d46
|
4
|
+
data.tar.gz: 55d4baedfb98e17e9f43052d9473257d65194529
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5e81661e1d9fbf1b4324365fc3f2bad744d1a463dd647aeb79c9515a0266ccf8a0fe76d5f9be96681114b8136ff7f7293043df50e165d1bf7c30d3c4bed1b5da
|
7
|
+
data.tar.gz: 8515c5e5326ce48910f6f6ab59d0517469054f4d8efaebaf7fd336b8a44a4a563b8aef287162dd4b71e89777d21a13392cee94433b40cb5721ef85c369aa7aa9
|
data/README.md
CHANGED
@@ -87,7 +87,7 @@ This fastlane plugin includes the following actions:
|
|
87
87
|
|
88
88
|
### multi_scan 🎉
|
89
89
|
|
90
|
-
Use `:multi_scan` intead of `:scan` to improve the usefulness of iOS test results, inspect partial results periodically during a test run, and provide better results reporting.
|
90
|
+
Use `:multi_scan` intead of `:scan` to improve the usefulness of iOS test results, reduce test run time, inspect partial results periodically during a test run, and provide better results reporting.
|
91
91
|
|
92
92
|
#### Improving Usefulness
|
93
93
|
|
@@ -254,9 +254,15 @@ module Fastlane
|
|
254
254
|
description: "Comma separated list of the output types (e.g. html, junit, json, json-compilation-database)",
|
255
255
|
default_value: "html,junit"
|
256
256
|
),
|
257
|
+
FastlaneCore::ConfigItem.new(
|
258
|
+
key: :collate_reports,
|
259
|
+
description: "Whether or not to collate the reports generated by multiple retries, batches, and parallel test runs",
|
260
|
+
default_value: true,
|
261
|
+
is_string: false
|
262
|
+
),
|
257
263
|
FastlaneCore::ConfigItem.new(
|
258
264
|
key: :parallel_testrun_count,
|
259
|
-
description: 'Run
|
265
|
+
description: 'Run simulators each batch of tests and/or each test target in parallel on its own Simulator',
|
260
266
|
optional: true,
|
261
267
|
is_string: false,
|
262
268
|
default_value: 1,
|
@@ -28,7 +28,7 @@ module Fastlane
|
|
28
28
|
UI.important("Is the Build Setting, `ENABLE_TESTABILITY` enabled for the test target #{testable_name}?")
|
29
29
|
end
|
30
30
|
tests[testable_name] = test_identifiers.map do |test_identifier|
|
31
|
-
"#{testable_name
|
31
|
+
"#{testable_name}/#{test_identifier}"
|
32
32
|
end
|
33
33
|
end
|
34
34
|
tests
|
@@ -21,7 +21,6 @@ module TestCenter
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def before_testrun
|
24
|
-
remove_preexisting_test_result_bundles
|
25
24
|
delete_xcresults # has to be performed _after_ moving a *.test_result
|
26
25
|
quit_simulator
|
27
26
|
set_json_env
|
@@ -75,14 +74,6 @@ module TestCenter
|
|
75
74
|
ENV['XCPRETTY_JSON_FILE_OUTPUT'] = @xcpretty_json_file_output
|
76
75
|
end
|
77
76
|
|
78
|
-
def remove_preexisting_test_result_bundles
|
79
|
-
return unless @options[:result_bundle]
|
80
|
-
|
81
|
-
glob_pattern = "#{output_directory}/*.test_result"
|
82
|
-
preexisting_test_result_bundles = Dir.glob(glob_pattern)
|
83
|
-
FileUtils.rm_rf(preexisting_test_result_bundles)
|
84
|
-
end
|
85
|
-
|
86
77
|
def scan_options
|
87
78
|
valid_scan_keys = Fastlane::Actions::ScanAction.available_options.map(&:key)
|
88
79
|
xcargs = @options[:xcargs]
|
@@ -117,6 +108,8 @@ module TestCenter
|
|
117
108
|
end
|
118
109
|
|
119
110
|
def collate_reports
|
111
|
+
return unless @options[:collate_reports]
|
112
|
+
|
120
113
|
report_collator_options = {
|
121
114
|
source_reports_directory_glob: output_directory,
|
122
115
|
output_directory: output_directory,
|
@@ -263,8 +256,7 @@ module TestCenter
|
|
263
256
|
dst_test_bundle_parent_dir = File.dirname(src_test_bundle)
|
264
257
|
dst_test_bundle_basename = File.basename(src_test_bundle, '.test_result')
|
265
258
|
dst_test_bundle = "#{dst_test_bundle_parent_dir}/#{dst_test_bundle_basename}-#{@testrun_count}.test_result"
|
266
|
-
|
267
|
-
FileUtils.mv(src_test_bundle, dst_test_bundle)
|
259
|
+
File.rename(src_test_bundle, dst_test_bundle)
|
268
260
|
end
|
269
261
|
end
|
270
262
|
end
|
@@ -25,6 +25,8 @@ module TestCenter
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def run
|
28
|
+
remove_preexisting_test_result_bundles
|
29
|
+
|
28
30
|
if @options[:invocation_based_tests]
|
29
31
|
run_invocation_based_tests
|
30
32
|
else
|
@@ -32,6 +34,14 @@ module TestCenter
|
|
32
34
|
end
|
33
35
|
end
|
34
36
|
|
37
|
+
def remove_preexisting_test_result_bundles
|
38
|
+
return unless @options[:result_bundle]
|
39
|
+
|
40
|
+
glob_pattern = "#{output_directory}/**/*.test_result"
|
41
|
+
preexisting_test_result_bundles = Dir.glob(glob_pattern)
|
42
|
+
FileUtils.rm_rf(preexisting_test_result_bundles)
|
43
|
+
end
|
44
|
+
|
35
45
|
def run_invocation_based_tests
|
36
46
|
@options[:only_testing] = @options[:only_testing]&.map(&:strip_testcase)&.uniq
|
37
47
|
@options[:skip_testing] = @options[:skip_testing]&.map(&:strip_testcase)&.uniq
|
@@ -69,12 +79,13 @@ module TestCenter
|
|
69
79
|
end
|
70
80
|
|
71
81
|
def collate_batched_reports
|
72
|
-
return
|
82
|
+
return unless @batch_count > 1
|
83
|
+
return unless @options[:collate_reports]
|
84
|
+
|
73
85
|
|
74
86
|
@test_collector.testables.each do |testable|
|
75
87
|
collate_batched_reports_for_testable(testable)
|
76
88
|
end
|
77
|
-
true
|
78
89
|
end
|
79
90
|
|
80
91
|
def collate_batched_reports_for_testable(testable)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-test_center
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.8.0.parallelizing.beta.
|
4
|
+
version: 3.8.0.parallelizing.beta.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lyndsey Ferguson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-06-
|
11
|
+
date: 2019-06-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|