module GemHadar::SimpleCov
def default_block
-
(Proc)
- a lambda configuring SimpleCov with coverage settings
def default_block filter = "#{File.basename(File.dirname(caller.first))}/" -> { enable_coverage :branch add_filter filter formatter SimpleCov::Formatter::MultiFormatter.new([ SimpleCov::Formatter::SimpleFormatter, SimpleCov::Formatter::HTMLFormatter, GemHadar::SimpleCov::ContextFormatter, ]) } end
def start(profile = nil, &block)
-
block
(Proc, nil
) -- optional block containing custom configuration -
profile
(String, nil
) -- the SimpleCov profile to use for
def start(profile = nil, &block) if ENV['START_SIMPLECOV'].to_i != 1 STDERR.puts color(226) { "Skip starting Simplecov for code coverage, "\ "enable by setting env var: START_SIMPLECOV=1" } return end require 'simplecov' STDERR.puts color(76) { "Configuring Simplecov for code coverage." } block ||= default_block SimpleCov.start(profile, &block) rescue LoadError => e warn "Caught #{e.class}: #{e}" STDERR.puts "Install with: gem install simplecov" end