Sha256: 93a2d2e9c5451a830c8c068d045a4c48e9c454034b442f22e4c16e91c14182e3

Contents?: true

Size: 916 Bytes

Versions: 6

Compression:

Stored size: 916 Bytes

Contents

require 'rubycritic/generators/html/base'

module Rubycritic
  module Generator
    module Html
      class SmellsIndex < Base
        TEMPLATE = erb_template('smells_index.html.erb')

        def initialize(analysed_modules)
          @smells = analysed_modules.flat_map(&:smells).uniq
          @analysed_module_names = analysed_module_names(analysed_modules)
          @show_status = (Config.mode == :default)
        end

        def file_name
          'smells_index.html'
        end

        def render
          index_body = TEMPLATE.result(get_binding)
          LAYOUT_TEMPLATE.result(get_binding { index_body })
        end

        private

        def analysed_module_names(analysed_modules)
          names = {}
          analysed_modules.each do |analysed_module|
            names[analysed_module.pathname] = analysed_module.name
          end
          names
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rubycritic-2.9.2 lib/rubycritic/generators/html/smells_index.rb
rubycritic-2.9.1 lib/rubycritic/generators/html/smells_index.rb
rubycritic-2.9.0 lib/rubycritic/generators/html/smells_index.rb
rubycritic-2.8.0 lib/rubycritic/generators/html/smells_index.rb
rubycritic-2.7.1 lib/rubycritic/generators/html/smells_index.rb
rubycritic-2.7.0 lib/rubycritic/generators/html/smells_index.rb