fastlane-plugin-test_center 3.6.3.parallelizing.alpha.1 → 3.6.3.parallelizing.alpha.2

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
  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