class SimpleCovJSONFormatter::ResultHashFormatter

Public Class Methods

new(result) click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 7
def initialize(result)
  @result = result
end

Public Instance Methods

format() click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 11
def format
  format_files
  format_groups

  formatted_result
end

Private Instance Methods

format_files() click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 20
def format_files
  @result.files.each do |source_file|
    formatted_result[:coverage][source_file.filename] =
      format_source_file(source_file)
  end
end
format_groups() click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 27
def format_groups
  @result.groups.each do |name, file_list|
    formatted_result[:groups][name] = {
      lines: {
        covered_percent: file_list.covered_percent
      }
    }
  end
end
format_source_file(source_file) click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 47
def format_source_file(source_file)
  source_file_formatter = SourceFileFormatter.new(source_file)
  source_file_formatter.format
end
formatted_result() click to toggle source
# File lib/simplecov_json_formatter/result_hash_formatter.rb, line 37
def formatted_result
  @formatted_result ||= {
    meta: {
      simplecov_version: SimpleCov::VERSION
    },
    coverage: {},
    groups: {}
  }
end