class Praxis::BootloaderStages::WarnUnloadedFiles

Public Class Methods

enabled() click to toggle source
# File lib/praxis/bootloader_stages/warn_unloaded_files.rb, line 13
def self.enabled
  @enabled
end
enabled=(enabled) click to toggle source
# File lib/praxis/bootloader_stages/warn_unloaded_files.rb, line 9
def self.enabled=(enabled)
  @enabled = enabled
end

Public Instance Methods

execute() click to toggle source
# File lib/praxis/bootloader_stages/warn_unloaded_files.rb, line 17
def execute
  return unless self.class.enabled

  if application.file_layout[:app] == []
    return
  end

  base = application.file_layout[:app].base
  return unless base.exist?
  file_enum = base.find.to_a
  files = file_enum.select do |file|
    path = file.relative_path_from(base)
    path.extname == '.rb'
  end

  missing = Set.new(files) - application.loaded_files
  if missing.any?
    msg = "The following application files under #{base} were not loaded:\n"
    missing.each do |file|
      path = file.relative_path_from(base)
      msg << " * #{path}\n"
    end
    warn msg
  end
end