class RubyCritic::Generator::HtmlReport

Constants

ASSETS_DIR

Public Class Methods

new(analysed_modules) click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 16
def initialize(analysed_modules)
  @analysed_modules = analysed_modules
end

Public Instance Methods

browser() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 27
def browser
  @browser ||= RubyCritic::Browser.new(report_location)
end
generate_report() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 20
def generate_report
  create_directories_and_files
  copy_assets_to_report_directory
  puts "New critique at #{report_location}"
  browser.open unless Config.no_browser
end

Private Instance Methods

code_index_generator() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 48
def code_index_generator
  Html::CodeIndex.new(@analysed_modules)
end
copy_assets_to_report_directory() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 66
def copy_assets_to_report_directory
  FileUtils.cp_r(ASSETS_DIR, Config.root)
end
create_directories_and_files() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 33
def create_directories_and_files
  Array(generators).each do |generator|
    FileUtils.mkdir_p(generator.file_directory)
    File.write(generator.file_pathname, generator.render)
  end
end
file_generators() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 60
def file_generators
  @analysed_modules.map do |analysed_module|
    Html::CodeFile.new(analysed_module)
  end
end
generators() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 40
def generators
  [overview_generator, code_index_generator, smells_index_generator, simple_cov_index_generator] + file_generators
end
overview_generator() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 44
def overview_generator
  @overview_generator ||= Html::Overview.new(@analysed_modules)
end
report_location() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 70
def report_location
  overview_generator.file_href
end
simple_cov_index_generator() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 56
def simple_cov_index_generator
  Html::SimpleCovIndex.new(@analysed_modules)
end
smells_index_generator() click to toggle source
# File lib/rubycritic/generators/html_report.rb, line 52
def smells_index_generator
  Html::SmellsIndex.new(@analysed_modules)
end