class PodPrebuild::Diagnosis

Public Class Methods

new(options) click to toggle source
# File lib/cocoapods-binary-cache/diagnosis/diagnosis.rb, line 6
def initialize(options)
  @diagnosers = [
    IntegrationDiagnosis
  ].map { |klazz| klazz.new(options) }
end

Public Instance Methods

run() click to toggle source
# File lib/cocoapods-binary-cache/diagnosis/diagnosis.rb, line 12
def run
  diagnosis = @diagnosers.map(&:run)
  errors = diagnosis.select { |d| d[0] == :error }.map { |d| d[1] }
  warnings = diagnosis.select { |d| d[0] == :error }.map { |d| d[1] }

  warnings.each { |d| Pod::UI.puts "⚠️  #{d[1]}" }
  errors.each { |d| Pod::UI.puts "🚩  #{d[1]}" }
  return if errors.empty? || !PodPrebuild.config.strict_diagnosis?

  raise "There are #{errors.count} error(s) spotted after the diagnosis"
end