fastlane-plugin-test_center 3.8.0.parallelizing.beta.3 → 3.8.0.parallelizing.beta.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 13ad7e271c23c0d85c4c1afa01f3e501d14b7b9a
4
- data.tar.gz: d82d02aadd52a0222c01943597995878f66f65a5
3
+ metadata.gz: a648ab034eb7f0efa4c6ecfc009e91ad1edb2d46
4
+ data.tar.gz: 55d4baedfb98e17e9f43052d9473257d65194529
5
5
  SHA512:
6
- metadata.gz: 50b4a4721bdfe01fa4b117c55d297666fe6b2b1d1e8fe5c7ea1c21b18ca99442d11d20aef1ce80480c20f80eda6b177b0b9ea0e1fc325644638bba0ab8a1a532
7
- data.tar.gz: 635cf64125c954ac153940fb5b335ec4f357e12dc3392e2452b221c33d9cbe3e9f3d3f0efbe8742509ba067dce5f9f14eec44c920eee10baa8c19446bf6d5712
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 simulators each batch of tests and/or each test target in parallel on its own Simulator',
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.shellsafe_testidentifier}/#{test_identifier}"
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
- FileUtils.mkdir_p(dst_test_bundle)
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 false unless @batch_count > 1
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)
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module TestCenter
3
- VERSION = "3.8.0.parallelizing.beta.3"
3
+ VERSION = "3.8.0.parallelizing.beta.4"
4
4
  end
5
5
  end
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.3
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-23 00:00:00.000000000 Z
11
+ date: 2019-06-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json