diff --git a/web/.simplecov b/web/.simplecov index 1091e3c7a..f7df5462a 100644 --- a/web/.simplecov +++ b/web/.simplecov @@ -10,14 +10,23 @@ if ENV['COVERAGE'] == "1" SimpleCov.formatter = SimpleCov::Formatter::MergedFormatter - SimpleCov.start do - add_filter "/test/" - add_filter "/bin/" - add_filter "/scripts/" - add_filter "/tmp/" - add_filter "/vendor/" - add_filter "/spec/" - add_filter "/features/" + SimpleCov.start :rails do + # remove the :root_filter so that we can see coverage of external dependencies (i.e., jam_ruby) + filters.clear + + # ignore Ruby itself (...not to be confused with jam_ruby) + add_filter "/lib/ruby/" + + # ignore Rails subfolders which don't contain app code + %w{config coverage db doc features log script spec test tmp}.each do |dir| + add_filter "#{dir}/" + end + + # ignore all gem code except our jam gems + add_filter {|src| src.filename =~ /ruby.*\/gems\// unless src.filename =~ /\/gems\/jam/ } + + # categorize JamRuby in the coverage report: + add_group 'Jam Ruby', 'jam_ruby' end all_files = Dir['**/*.rb']