class Coverband::Utils::FileList

Public Instance Methods

covered_lines() click to toggle source

Returns the count of lines that have coverage

# File lib/coverband/utils/file_list.rb, line 14
def covered_lines
  return 0.0 if empty?

  map { |f| f.covered_lines.count }.inject(:+)
end
covered_percent() click to toggle source

Computes the coverage based upon lines covered and lines missed @return [Float]

# File lib/coverband/utils/file_list.rb, line 54
def covered_percent
  return 100.0 if empty? || lines_of_code.zero?

  Float(covered_lines * 100.0 / lines_of_code)
end
covered_percentages() click to toggle source

Computes the coverage based upon lines covered and lines missed for each file Returns an array with all coverage percentages

# File lib/coverband/utils/file_list.rb, line 43
def covered_percentages
  map(&:covered_percent)
end
covered_strength() click to toggle source

Computes the strength (hits / line) based upon lines covered and lines missed @return [Float]

# File lib/coverband/utils/file_list.rb, line 68
def covered_strength
  return 0.0 if empty? || lines_of_code.zero?

  Float(map { |f| f.covered_strength * f.lines_of_code }.inject(:+) / lines_of_code)
end
first_seen_at() click to toggle source
# File lib/coverband/utils/file_list.rb, line 74
def first_seen_at
  map(&:first_updated_at).reject { |el| el.is_a?(String) }.min
end
formatted_covered_percent() click to toggle source

Computes the coverage based upon lines covered and lines missed, formatted @return [Float]

# File lib/coverband/utils/file_list.rb, line 62
def formatted_covered_percent
  covered_percent.round(2)
end
lines_of_code() click to toggle source

Returns the overall amount of relevant lines of code across all files in this list

# File lib/coverband/utils/file_list.rb, line 48
def lines_of_code
  covered_lines + missed_lines
end
missed_lines() click to toggle source

Returns the count of lines that have been missed

# File lib/coverband/utils/file_list.rb, line 21
def missed_lines
  return 0.0 if empty?

  map { |f| f.missed_lines.count }.inject(:+)
end
never_lines() click to toggle source

Returns the count of lines that are not relevant for coverage

# File lib/coverband/utils/file_list.rb, line 28
def never_lines
  return 0.0 if empty?

  map { |f| f.never_lines.count }.inject(:+)
end
skipped_lines() click to toggle source

Returns the count of skipped lines

# File lib/coverband/utils/file_list.rb, line 35
def skipped_lines
  return 0.0 if empty?

  map { |f| f.skipped_lines.count }.inject(:+)
end