Sha256: 1edb9baaf60331cb2eeb6b6d9092169a71f41b0932edbe0bf10007e73cf90c8e
Contents?: true
Size: 987 Bytes
Versions: 3
Compression:
Stored size: 987 Bytes
Contents
# frozen_string_literal: true module RubyCritic module Command class StatusReporter attr_reader :status, :status_message, :score SUCCESS = 0 SCORE_BELOW_MINIMUM = 1 def initialize(options) @options = options @status = SUCCESS end def score=(input_score) @score = input_score.round(2) update_status end private def update_status @status = current_status update_status_message end def current_status satisfy_minimum_score_rule ? SUCCESS : SCORE_BELOW_MINIMUM end def satisfy_minimum_score_rule score >= @options[:minimum_score].to_f end def update_status_message case @status when SUCCESS @status_message = "Score: #{score}" when SCORE_BELOW_MINIMUM @status_message = "Score (#{score}) is below the minimum #{@options[:minimum_score]}" end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rubycritic-4.9.1 | lib/rubycritic/commands/status_reporter.rb |
rubycritic-4.9.0 | lib/rubycritic/commands/status_reporter.rb |
rubycritic-4.8.1 | lib/rubycritic/commands/status_reporter.rb |