MINIMUM_COVERAGE = 87 unless ENV['COVERAGE'] == 'off' require 'simplecov' require 'simplecov-rcov' require 'coveralls' Coveralls.wear! SimpleCov.formatters = [ SimpleCov::Formatter::RcovFormatter, Coveralls::SimpleCov::Formatter ] SimpleCov.start do add_filter '/vendor/' add_filter '/spec/' add_filter '/lib/error_handling/' add_group 'lib', 'lib' end SimpleCov.at_exit do SimpleCov.result.format! percent = SimpleCov.result.covered_percent unless percent >= MINIMUM_COVERAGE puts '*' * 80 puts "Coverage must be above #{MINIMUM_COVERAGE}%. It is #{format('%.2f', percent)}%" puts '*' * 80 Kernel.exit(1) end end end