Class: AvoCli::Scanner

Inherits:
Object
  • Object
show all
Defined in:
lib/avo_cli/scanner.rb

Constant Summary collapse

AVO_PATHS =
{
  actions: ["app", "avo", "actions", "*.rb"],
  config: ["config", "*.rb"],
  cards: ["app", "avo", "cards", "*.rb"],
  dashboards: ["app", "avo", "dashboards", "*.rb"],
  fields: ["app", "avo", "fields", "*.rb"],
  filters: ["app", "avo", "filters", "*.rb"],
  models: ["app", "models", "*.rb"],
  resource_controllers: ["app", "controllers", "avo", "*.rb"],
  resource_tools: ["app", "avo", "resource_tools", "*.rb"],
  resources: ["app", "avo", "resources", "*.rb"],
  scopes: ["app", "avo", "scopes", "*.rb"],
  views: ["app", "views", "avo", "*.rb"]
}

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeScanner

Returns a new instance of Scanner.



25
26
27
# File 'lib/avo_cli/scanner.rb', line 25

def initialize
  @results = []
end

Instance Attribute Details

#resultsObject (readonly)

Returns the value of attribute results.



23
24
25
# File 'lib/avo_cli/scanner.rb', line 23

def results
  @results
end

Class Method Details

.scan(path: Dir.pwd) ⇒ Object



17
18
19
20
21
# File 'lib/avo_cli/scanner.rb', line 17

def self.scan(path: Dir.pwd)
  scan = new
  AvoCli::Scanners::ResourceScanner.new(path:, scan:).scan!
  scan
end

Instance Method Details

#error_messagesObject



29
30
31
32
33
# File 'lib/avo_cli/scanner.rb', line 29

def error_messages
  errors.flatten.map do |error|
    error[:message]
  end
end

#errorsObject



35
36
37
# File 'lib/avo_cli/scanner.rb', line 35

def errors
  results.map(&:errors).flatten
end

#errors?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'lib/avo_cli/scanner.rb', line 39

def errors?
  errors.present?
end