fastlane-plugin-test_center 3.6.3.parallelizing.alpha.1 → 3.6.3.parallelizing.alpha.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
  SHA256:
3
- metadata.gz: 4ef7fa47b8bc0540261c8c715ed39e4abdd3965b17c64a15be98a41e74c688d0
4
- data.tar.gz: '08de64d8a93687c8281198d8aeb585525d3c6798a9d4faa450a6131c6d1b764b'
3
+ metadata.gz: 4ce72a79fa8ee214876b899076c621635f770dfab8f5ecefc9dbe229e2be7900
4
+ data.tar.gz: cb4710721fe5eb0c0e41d69455ac55fdc24d227fd398add40ef0df1510d6d372
5
5
  SHA512:
6
- metadata.gz: e51f8eb6f5ee016d2768037a1e2c6a0ffb19e6b207d8f199dce21bd19dd81d16bd64b5ec712afe06c235ee59c825432172f9665e43b9354ce38629d81e42ab59
7
- data.tar.gz: 80938ce68a08db588a788a5ce8fde1bdec385adec51d53405633a341c885051f7ff2a570ea862e22464f3fae72cb52faf23d644850bba808e92d9a1aab2a1950
6
+ metadata.gz: aa787baa29ea8784912fe30976c155eb2b69a7bb490ac3da5fdd5d2556c71a5807ee3d17f2b036dd2307ee2b97d515bb4eedc1cdf0204e86b70b693a409bbd26
7
+ data.tar.gz: '09c3acd8862555aea016955840f78808bf4936fda7f041afb5c17dcd64980ffd274d46d4d825249d11ceb36143a1a864505b4717180f5ddbb3aecd4bcf1dcdee'
@@ -36,31 +36,13 @@ module TestCenter
36
36
  end
37
37
 
38
38
  def run
39
- update_scan_options
40
- delete_xcresults
41
-
42
39
  try_count = @options[:try_count] || 1
43
40
  begin
41
+ # TODO move delete_xcresults to `before_testrun`
44
42
  @retrying_scan_helper.before_testrun
45
-
46
-
47
-
48
- # TODO: Investigate the following error:
49
- """
50
- 2019-05-09 13:32:40.707 xcodebuild[78535:1944070] [MT] DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks_Fall2018/IDEFrameworks-14460.46/IDEFoundation/ProjectModel/ActionRecords/IDESchemeActionTestAttachment.m:186
51
- Details: Error writing attachment data to file /Users/lyndsey.ferguson/Library/Developer/Xcode/DerivedData/AtomicBoy-flqqvvvzbouqymbyffgdbtjoiufr/Logs/Test/Test-Transient Testing-2019.05.09_13-32-08--0400.xcresult/1_Test/Attachments/Screenshot_E0AE7940-E7F4-4CA8-BB2B-8822D730D10F.jpg: Error Domain=NSCocoaErrorDomain Code=4 \"The folder “Screenshot_E0AE7940-E7F4-4CA8-BB2B-8822D730D10F.jpg” doesn’t exist.\" UserInfo={NSFilePath=/Users/lyndsey.ferguson/Library/Developer/Xcode/DerivedData/AtomicBoy-flqqvvvzbouqymbyffgdbtjoiufr/Logs/Test/Test-Transient Testing-2019.05.09_13-32-08--0400.xcresult/1_Test/Attachments/Screenshot_E0AE7940-E7F4-4CA8-BB2B-8822D730D10F.jpg, NSUserStringVariant=Folder, NSUnderlyingError=0x7fa6ef34ef90 {Error Domain=NSPOSIXErrorDomain Code=2 \"No such file or directory\"}}
52
- Object: <IDESchemeActionTestAttachment: 0x7fa6ef22d270>
53
- Method: -_savePayload:
54
- Thread: <NSThread: 0x7fa6ea516110>{number = 1, name = main}
55
- Please file a bug at https://bugreport.apple.com with this warning message and any useful information you can provide.
56
-
57
- It may be due to:
58
- 2019-05-09 14:17:30.933 xcodebuild[86893:2045058] IDETestOperationsObserverDebug: Failed to move logarchive from /Users/lyndsey.ferguson/Library/Developer/CoreSimulator/Devices/0D312041-2D60-4221-94CC-3B0040154D74/data/tmp/test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive to diagnostics location /Users/lyndsey.ferguson/Library/Developer/Xcode/DerivedData/AtomicBoy-flqqvvvzbouqymbyffgdbtjoiufr/Logs/Test/Test-Transient Testing-2019.05.09_14-17-04--0400.xcresult/1_Test/Diagnostics/iPhone 5s_0D312041-2D60-4221-94CC-3B0040154D74/test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive: Error Domain=NSCocoaErrorDomain Code=4 \"“test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive” couldn’t be moved to “iPhone 5s_0D312041-2D60-4221-94CC-3B0040154D74” because either the former doesn’t exist, or the folder containing the latter doesn’t exist.\" UserInfo={NSSourceFilePathErrorKey=/Users/lyndsey.ferguson/Library/Developer/CoreSimulator/Devices/0D312041-2D60-4221-94CC-3B0040154D74/data/tmp/test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive, NSUserStringVariant=(
59
- Move
60
- ), NSDestinationFilePath=/Users/lyndsey.ferguson/Library/Developer/Xcode/DerivedData/AtomicBoy-flqqvvvzbouqymbyffgdbtjoiufr/Logs/Test/Test-Transient Testing-2019.05.09_14-17-04--0400.xcresult/1_Test/Diagnostics/iPhone 5s_0D312041-2D60-4221-94CC-3B0040154D74/test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive, NSFilePath=/Users/lyndsey.ferguson/Library/Developer/CoreSimulator/Devices/0D312041-2D60-4221-94CC-3B0040154D74/data/tmp/test-session-systemlogs-2019.05.09_14-17-04--0400.logarchive, NSUnderlyingError=0x7fdf96c6de90 {Error Domain=NSPOSIXErrorDomain Code=2 \"No such file or directory\"}}
61
-
62
- """
63
43
  update_scan_options
44
+ delete_xcresults # has to be performed _after_ moving a *.test_result
45
+
64
46
  Scan::Runner.new.run
65
47
  @retrying_scan_helper.after_testrun
66
48
  true
@@ -78,16 +60,3 @@ module TestCenter
78
60
  end
79
61
  end
80
62
  end
81
- # Ug. How do I name this class?
82
- # I want a class that retries a scan
83
- # I want a class that controls or manages the class that retries the scan and the set up for that
84
- # etc.
85
- # So, the class or the realm could be:
86
- # MultiScanManager
87
- # MultiScanController
88
- # ScanManager
89
- # ScanMaster
90
- # MultiScanMaster
91
- # MasterScanManser
92
- # MasterMultiScan
93
- # I like MultiScanManager
@@ -24,22 +24,26 @@ module TestCenter
24
24
  @given_output_files = multi_scan_options[:output_files]
25
25
  @parallelize = multi_scan_options[:parallelize]
26
26
  @test_collector = TestCenter::Helper::TestCollector.new(multi_scan_options)
27
- @scan_options = multi_scan_options.reject do |option, _|
28
- %i[
29
- output_directory
30
- only_testing
31
- skip_testing
32
- clean
33
- try_count
34
- batch_count
35
- custom_report_file_name
36
- fail_build
37
- testrun_completed_block
38
- output_types
39
- output_files
40
- parallelize
41
- quit_simulators
42
- ].include?(option)
27
+ if ENV['USE_REFACTORED_PARALLELIZED_MULTI_SCAN']
28
+ @scan_options = multi_scan_options
29
+ else
30
+ @scan_options = multi_scan_options.reject do |option, _|
31
+ %i[
32
+ output_directory
33
+ only_testing
34
+ skip_testing
35
+ clean
36
+ try_count
37
+ batch_count
38
+ custom_report_file_name
39
+ fail_build
40
+ testrun_completed_block
41
+ output_types
42
+ output_files
43
+ parallelize
44
+ quit_simulators
45
+ ].include?(option)
46
+ end
43
47
  end
44
48
  @scan_options[:clean] = false
45
49
  @scan_options[:disable_concurrent_testing] = true
@@ -56,51 +60,11 @@ module TestCenter
56
60
  @testables_count = @test_collector.testables.size
57
61
  all_tests_passed = each_batch do |test_batch, current_batch_index|
58
62
  if ENV['USE_REFACTORED_PARALLELIZED_MULTI_SCAN']
59
- # destination = @parallelizer&.destination_for_batch(current_batch_index) || Scan&.config&.fetch(:destination)
60
- # if destination.nil?
61
- # app_infoplist ||= XCTestrunInfo.new(@scan_options[:xctestrun])
62
-
63
- # batch_deploymentversions = @test_collector.test_batches.map do |test_batch|
64
- # testable = test_batch.first.split('/').first.gsub('\\', '')
65
- # # TODO: investigate the reason for this call that doesn't seem to do
66
- # # anything other than query for and then discard MinimumOSVersion
67
- # app_infoplist.app_plist_for_testable(testable)['MinimumOSVersion']
68
- # end
69
-
70
- # device_description = @scan_options[:device]
71
- # device_name = 'iPhone 5s'
72
- # device_version = batch_deploymentversions[current_batch_index]
73
- # unless device_description.nil?
74
- # /(?<device_name>.*)\s+\((?<device_version>.*)\)/ =~ device_description
75
- # end
76
- # # TODO: check for an existing simulator that can serve
77
- # all_runtimes = ::Snapshot::ResetSimulators.runtimes
78
-
79
- # all_ios_runtimes = all_runtimes.select { |v, id| v[/^iOS/] }
80
- # ios_runtimes_greater_than_equal = all_ios_runtimes.select do |versionstr, _|
81
- # _, version = versionstr.split(' ')
82
- # Gem::Version.new(device_version) <= Gem::Version.new(version)
83
- # end
84
- # ios_runtimes_greater_than_equal.sort! do |a, b|
85
- # version_a = a.first.split(' ').last
86
- # version_b = b.first.split(' ').last
87
- # Gem::Version.new(version_a) <=> Gem::Version.new(version_b)
88
- # end
89
-
90
- # runtime = ios_runtimes_greater_than_equal.first.last
91
- # device_type = `xcrun simctl list devicetypes`.scan(/(.*)\s\((.*)\)/)
92
- # .find { |name, device_id| name == device_name }
93
-
94
- # command = "xcrun simctl create '#{device_name}' #{device_type.last} #{runtime}"
95
- # UI.command(command) if ::FastlaneCore::Globals.verbose?
96
- # udid = `#{command}`.chomp
97
- # destination = "platform=iOS Simulator,id=#{udid}"
98
- # end
99
63
  retrying_scan = TestCenter::Helper::MultiScanManager::RetryingScan.new(
100
64
  @scan_options.merge(
101
- # destination: destination,
102
65
  only_testing: test_batch.map(&:shellsafe_testidentifier),
103
- output_directory: @output_directory
66
+ output_directory: @output_directory,
67
+ try_count: @try_count
104
68
  ).reject { |key| %i[device devices].include?(key) }
105
69
  )
106
70
  retrying_scan.run
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module TestCenter
3
- VERSION = "3.6.3.parallelizing.alpha.1"
3
+ VERSION = "3.6.3.parallelizing.alpha.2"
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.6.3.parallelizing.alpha.1
4
+ version: 3.6.3.parallelizing.alpha.2
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-05-15 00:00:00.000000000 Z
11
+ date: 2019-05-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json