Sha256: 219c00a66cb62cfd5871bad6e4979ec1004968c85a81f8a798b16c92272b1ed3

Contents?: true

Size: 898 Bytes

Versions: 25

Compression:

Stored size: 898 Bytes

Contents

# frozen_string_literal: true

require 'rainbow'

module RubyCritic
  module Generator
    module Text
      class List
        class << self
          TEMPLATE_PATH = File.expand_path('templates/list.erb', __dir__)

          def erb_template
            @erb_template ||= ERB.new(File.read(TEMPLATE_PATH), nil, '-')
          end
        end

        RATING_TO_COLOR = {
          'A' => :green,
          'B' => :green,
          'C' => :yellow,
          'D' => :orange,
          'F' => :red
        }.freeze

        def initialize(analysed_module)
          @analysed_module = analysed_module
        end

        def render
          erb_template.result(binding)
        end

        private

        def erb_template
          self.class.erb_template
        end

        def color
          @color ||= RATING_TO_COLOR[@analysed_module.rating.to_s]
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 2 rubygems

Version Path
rubycritic-4.7.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.6.1 lib/rubycritic/generators/text/list.rb
rubycritic-4.6.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.5.2 lib/rubycritic/generators/text/list.rb
rubycritic-4.5.1 lib/rubycritic/generators/text/list.rb
rubycritic-4.5.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.4.1 lib/rubycritic/generators/text/list.rb
rubycritic-4.4.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.3.3 lib/rubycritic/generators/text/list.rb
rubycritic-4.3.2 lib/rubycritic/generators/text/list.rb
rubycritic-4.3.1 lib/rubycritic/generators/text/list.rb
rubycritic-4.3.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.2.2 lib/rubycritic/generators/text/list.rb
rubycritic-4.2.1 lib/rubycritic/generators/text/list.rb
rubycritic-4.2.0 lib/rubycritic/generators/text/list.rb
rubycritic-simplecov-4.1.1 lib/rubycritic/generators/text/list.rb
rubycritic-simplecov-4.1.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.1.0 lib/rubycritic/generators/text/list.rb
rubycritic-4.0.2 lib/rubycritic/generators/text/list.rb
rubycritic-4.0.1 lib/rubycritic/generators/text/list.rb