class SimpleCov::ExitCodes::MaximumCoverageDropCheck
def coverage_diff
def coverage_diff raise "Trying to access coverage_diff although there is no last run" unless last_run @coverage_diff ||= last_run[:result][:covered_percent] - covered_percent end
def covered_percent
def covered_percent SimpleCov.round_coverage(result.covered_percent) end
def exit_code
def exit_code SimpleCov::ExitCodes::MAXIMUM_COVERAGE_DROP end
def failing?
def failing? return false unless maximum_coverage_drop && last_run coverage_diff > maximum_coverage_drop end
def initialize(result, maximum_coverage_drop)
def initialize(result, maximum_coverage_drop) @result = result @maximum_coverage_drop = maximum_coverage_drop end
def last_run
def last_run return @last_run if defined?(@last_run) @last_run = SimpleCov::LastRun.read end
def report
def report $stderr.printf( "Coverage has dropped by %<drop_percent>.2f%% since the last time (maximum allowed: %<max_drop>.2f%%).\n", drop_percent: coverage_diff, max_drop: maximum_coverage_drop ) end