Sha256: 1ca769e319d2ac6fe54235334de1c5d316e740c06385ba1acceac5d3b22d11a9
Contents?: true
Size: 1.58 KB
Versions: 4
Compression:
Stored size: 1.58 KB
Contents
module Inch module CLI module Command module Output class Show < Base attr_reader :objects COLOR = :color132 BG_COLOR = :color138 LJUST = 20 def initialize(options, objects) @options = options @objects = objects display_objects end private def display_objects objects.each do |o| print_object(o) end end def print_object(o) ui.trace ui.header(o.fullname, COLOR, BG_COLOR) print_file_info(o, COLOR) print_grade_info(o) print_roles_info(o) end def print_grade_info(o) echo "Grade: #{grade(o.score)}".rjust(5) echo separator end def print_roles_info(o) if o.roles.empty? echo 'No roles assigned.'.color(:dark) else o.roles.each do |role| next unless role.suggestion echo '+'.color(COLOR) + " #{role.suggestion}" end end echo separator end def echo(msg = '') ui.edged(COLOR, msg) end def separator '-'.color(COLOR) * (CLI::COLUMNS - 2) end def grade(score) grade_lists ||= Evaluation.new_grade_lists r = grade_lists.find { |v| v.scores.include?(score) } "#{r.grade} - #{r.label}".color(r.color) end end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems