b0VIM 8.1÷2Ø^<-Þ.joshJoshs-Mac-mini.local~josh/Projects/fastlane/fastlane/snapshot/lib/snapshot/test_command_generator_base.rb 3210#"! Utp\!]ad,¸\Ù¿¾®{jKA@ Õ“v@å Û Ú ¶ • 1 0  õ ¹ d 0 ã × ¡   Q / ´ 9 "   þ Ý Ü À Ž   üòñßÊ—j]&×¼°™Ž}ka`ç…{±J@¬Tû¦|ÄŽcYX<ù¸· end Snapshot.cache[:derived_data_path] ||= (Snapshot.config[:derived_data_path] || Dir.mktmpdir("snapshot_derived")) def derived_data_path end return device ? device.udid : nil device = find_device(device_name, os_version) def device_udid(device_name, os_version = Snapshot.config[:ios_version]) end return name_matches.find { |sim| sim.os_version == os_version } || name_matches.first .reverse .sort_by { |sim| Gem::Version.new(sim.os_version) } name_matches = simulators.find_all { |sim| sim.name.strip == device_name.strip } # pick the device with the newest OS in case an exact OS match is not available # Sort devices with matching names by OS version, largest first, so that we can simulators = FastlaneCore::DeviceManager.simulators # # { platform:iOS Simulator, id:A141F23B-96B3-491A-8949-813B376C28A7, OS:9.0, name:iPhone 5 } # { platform:iOS Simulator, id:1685B071-AFB2-4DC1-BE29-8370BA4A6EBD, OS:9.0, name:iPhone 5 } # This happens when you have multiple simulators for a given device type / iOS combination # # > The requested device could not be found because multiple devices matched the request. # We might get this error message def find_device(device_name, os_version = Snapshot.config[:ios_version]) end return [] def suffix end return actions end actions << :test actions << :build # https://github.com/fastlane/fastlane/issues/2581 actions << :clean if Snapshot.config[:clean] else actions << "test-without-building" if Snapshot.config[:test_without_building] actions = [] def actions end return build_settings build_settings << "TEST_TARGET_NAME=#{config[:test_target_name].shellescape}" if config[:test_target_name] build_settings << "FASTLANE_SNAPSHOT=YES" build_settings = [] config = Snapshot.config def build_settings end return options options += config[:skip_testing].map { |test_id| "-skip-testing:#{test_id.shellescape}" } if config[:skip_testing] options += config[:only_testing].map { |test_id| "-only-testing:#{test_id.shellescape}" } if config[:only_testing] # they are present at all # detect_values will ensure that these values are present as Arrays if options << config[:xcargs] if config[:xcargs] end options << "-testPlan '#{config[:testplan]}'" if config[:testplan] if FastlaneCore::Helper.xcode_at_least?(11) options << "-resultBundlePath '#{result_bundle_path}'" if result_bundle_path options << "-sdk '#{config[:sdk]}'" if config[:sdk] options += project_path_array options = [] result_bundle_path = resolve_result_bundle_path(language, locale) if config[:result_bundle] config = Snapshot.config def options(language, locale) end UI.user_error!("No project/workspace found") return proj if proj.count > 0 proj = Snapshot.project.xcodebuild_parameters def project_path_array # @return [Array] The array with all the components to join # This will also include the scheme (if given) # Path to the project or workspace as parameter end ["set -o pipefail &&"] def prefix class << self class TestCommandGeneratorBasemodule Snapshotrequire_relative 'module'require 'fastlane_core/device_manager'adF æ !ɘnm,ÔX5½ ± p f e P , " ! ó Ï Å Ä ¡ } s r &  ø ð ê æ å end end end end not_implemented(__method__) def xcodebuild_log_path(device_type: nil, language: nil, locale: nil) end not_implemented(__method__) def destination(device_name) end not_implemented(__method__) def pipe(device_type, language, locale) end not_implemented(__method__) def initialize end return Snapshot.cache[:result_bundle_path][language_key] end Snapshot.cache[:result_bundle_path][language_key] = path end FileUtils.remove_dir(path) if File.directory?(path) path = File.join(Snapshot.config[:output_directory], "test_output", language_key, Snapshot.config[:scheme]) + ext ext = FastlaneCore::Helper.xcode_at_least?(11) ? '.xcresult' : '.test_result' unless Snapshot.cache[:result_bundle_path][language_key] language_key = locale || language Snapshot.cache[:result_bundle_path] = {} def resolve_result_bundle_path(language, locale)