Class: Fastlane::CreateSimulatorDevices::SimCTL::Runtime

Inherits:
Object
  • Object
show all
Defined in:
lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb,
lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime_supported_device_type.rb

Overview

Represents a runtime from ‘xcrun simctl list runtimes –json` output.

Defined Under Namespace

Classes: SupportedDeviceType

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(identifier:, platform:, version:, supported_device_types:, build_version:, is_available:) ⇒ Runtime

rubocop:disable Metrics/ParameterLists



48
49
50
51
52
53
54
55
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 48

def initialize(identifier:, platform:, version:, supported_device_types:, build_version:, is_available:) # rubocop:disable Metrics/ParameterLists
  self.identifier = identifier
  self.platform = platform
  self.version = version
  self.supported_device_types = supported_device_types
  self.build_version = build_version
  self.is_available = is_available
end

Instance Attribute Details

#build_versionObject

Returns the value of attribute build_version.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def build_version
  @build_version
end

#identifierObject

Returns the value of attribute identifier.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def identifier
  @identifier
end

#is_availableObject

Returns the value of attribute is_available.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def is_available
  @is_available
end

#platformObject

Returns the value of attribute platform.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def platform
  @platform
end

#supported_device_typesObject

Returns the value of attribute supported_device_types.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def supported_device_types
  @supported_device_types
end

#versionObject

Returns the value of attribute version.



46
47
48
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 46

def version
  @version
end

Class Method Details

.from_hash(hash) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 57

def self.from_hash(hash)
  build_version = AppleBuildVersion.new(hash[:buildversion]) if hash[:buildversion]

  new(
    identifier: hash[:identifier],
    platform: hash[:platform],
    version: Gem::Version.new(hash[:version]),
    supported_device_types: hash[:supportedDeviceTypes].map { |device_type| Runtime::SupportedDeviceType.from_hash(device_type) },
    build_version:,
    is_available: hash[:isAvailable]
  )
end

Instance Method Details

#available?Boolean

Returns:

  • (Boolean)


74
75
76
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 74

def available?
  is_available
end

#runtime_nameObject



70
71
72
# File 'lib/fastlane/plugin/create_simulator_devices/helpers/create_simulator_devices/models/simctl/runtime.rb', line 70

def runtime_name
  "#{[platform, version].join(' ')} (build #{build_version})"
end