Class: Cask::Auditor Private

Inherits:
Object
  • Object
show all
Defined in:
cask/auditor.rb

Overview

This class is part of a private API. This class may only be used in the Homebrew/brew repository. Third parties should avoid using this class if possible, as it may be removed or changed without warning.

Helper class for auditing all available languages of a cask.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cask, audit_download: nil, audit_appcast: nil, audit_online: nil, audit_strict: nil, audit_token_conflicts: nil, audit_new_cask: nil, quarantine: nil, any_named_args: nil, language: nil, display_passes: nil, display_failures_only: nil) ⇒ Auditor

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Returns a new instance of Auditor.



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'cask/auditor.rb', line 43

def initialize(
  cask,
  audit_download: nil,
  audit_appcast: nil,
  audit_online: nil,
  audit_strict: nil,
  audit_token_conflicts: nil,
  audit_new_cask: nil,
  quarantine: nil,
  any_named_args: nil,
  language: nil,
  display_passes: nil,
  display_failures_only: nil
)
  @cask = cask
  @audit_download = audit_download
  @audit_appcast = audit_appcast
  @audit_online = audit_online
  @audit_new_cask = audit_new_cask
  @audit_strict = audit_strict
  @quarantine = quarantine
  @audit_token_conflicts = audit_token_conflicts
  @any_named_args = any_named_args
  @language = language
  @display_passes = display_passes
  @display_failures_only = display_failures_only
end

Instance Attribute Details

#caskObject (readonly)

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



41
42
43
# File 'cask/auditor.rb', line 41

def cask
  @cask
end

#languageObject (readonly)

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



41
42
43
# File 'cask/auditor.rb', line 41

def language
  @language
end

Class Method Details

.audit(cask, audit_download: nil, audit_appcast: nil, audit_online: nil, audit_new_cask: nil, audit_strict: nil, audit_token_conflicts: nil, quarantine: nil, any_named_args: nil, language: nil, display_passes: nil, display_failures_only: nil) ⇒ Object

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'cask/auditor.rb', line 11

def self.audit(
  cask,
  audit_download: nil,
  audit_appcast: nil,
  audit_online: nil,
  audit_new_cask: nil,
  audit_strict: nil,
  audit_token_conflicts: nil,
  quarantine: nil,
  any_named_args: nil,
  language: nil,
  display_passes: nil,
  display_failures_only: nil
)
  new(
    cask,
    audit_download:        audit_download,
    audit_appcast:         audit_appcast,
    audit_online:          audit_online,
    audit_new_cask:        audit_new_cask,
    audit_strict:          audit_strict,
    audit_token_conflicts: audit_token_conflicts,
    quarantine:            quarantine,
    any_named_args:        any_named_args,
    language:              language,
    display_passes:        display_passes,
    display_failures_only: display_failures_only,
  ).audit
end

Instance Method Details

#auditObject

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'cask/auditor.rb', line 71

def audit
  warnings = Set.new
  errors = Set.new

  if !language && language_blocks
    language_blocks.each_key do |l|
      audit = audit_languages(l)
      summary = audit.summary(include_passed: output_passed?, include_warnings: output_warnings?)
      if summary.present? && output_summary?(audit)
        ohai "Auditing language: #{l.map { |lang| "'#{lang}'" }.to_sentence}" if output_summary?
        puts summary
      end
      warnings += audit.warnings
      errors += audit.errors
    end
  else
    audit = audit_cask_instance(cask)
    summary = audit.summary(include_passed: output_passed?, include_warnings: output_warnings?)
    puts summary if summary.present? && output_summary?(audit)
    warnings += audit.warnings
    errors += audit.errors
  end

  { warnings: warnings, errors: errors }
end