class SimpleCov::Formatter::ShieldJSONFormatter
shield json generator
Constants
- VERSION
Public Instance Methods
format(result)
click to toggle source
# File lib/simplecov-shield-json.rb, line 12 def format(result) shield_url = shield_json(result) File.open(output_filepath, 'w+') do |file| file.puts URI.open(shield_url).read end puts output_message(result) shield_url end
Private Instance Methods
color(coverage_percent)
click to toggle source
# File lib/simplecov-shield-json.rb, line 43 def color(coverage_percent) case coverage_percent when 90..100 'brightgreen' when 80..89 'yellow' else 'red' end end
output_filename()
click to toggle source
# File lib/simplecov-shield-json.rb, line 26 def output_filename 'badge.svg' end
output_filepath()
click to toggle source
# File lib/simplecov-shield-json.rb, line 30 def output_filepath File.join(output_path, output_filename) end
output_message(result)
click to toggle source
# File lib/simplecov-shield-json.rb, line 34 def output_message(result) "Coverage report generated for #{result.command_name} to #{output_filepath}. \ #{result.covered_lines} / #{result.total_lines} LOC (#{result.covered_percent.round(2)}%) covered." end
output_path()
click to toggle source
# File lib/simplecov-shield-json.rb, line 39 def output_path SimpleCov.coverage_path end
shield_json(result)
click to toggle source
# File lib/simplecov-shield-json.rb, line 54 def shield_json(result) "https://img.shields.io/badge/Coverage-#{result.covered_percent.round(2)}#{CGI.escape('%')}-#{color(result.covered_percent)}.svg" end