module Slather::CoverageService::JsonOutput

Public Instance Methods

post() click to toggle source
# File lib/slather/coverage_service/json_output.rb, line 17
def post
  report = coverage_files.map do |file|
    {
      file: file.source_file_pathname_relative_to_repo_root,
      coverage: file.line_coverage_data
    }
  end.to_json

  store_report(report)
end
store_report(report) click to toggle source
# File lib/slather/coverage_service/json_output.rb, line 28
def store_report(report)
  output_file = 'report.json'
  if output_directory
    FileUtils.mkdir_p(output_directory)
    output_file = File.join(output_directory, output_file)
  end
  File.write(output_file, report.to_s)
end

Private Instance Methods

coverage_file_class() click to toggle source
# File lib/slather/coverage_service/json_output.rb, line 8
def coverage_file_class
  if input_format == "profdata"
    Slather::ProfdataCoverageFile
  else
    Slather::CoverageFile
  end
end