Sha256: f5b7396f6099ddbdeb7dec6e5f63ca1222c926f4b76b4ec6dc9b2bc92a483373

Contents?: true

Size: 1.31 KB

Versions: 6

Compression:

Stored size: 1.31 KB

Contents

# An array of SimpleCov SourceFile instances with additional collection helper
# methods for calculating coverage across them etc.
class SimpleCov::FileList < Array
  # Returns the count of lines that have coverage
  def covered_lines
    return 0.0 if empty?
    map {|f| f.covered_lines.count }.inject(&:+)
  end

  # Returns the count of lines that have been missed
  def missed_lines
    return 0.0 if empty?
    map {|f| f.missed_lines.count }.inject(&:+)
  end

  # Returns the count of lines that are not relevant for coverage
  def never_lines
    return 0.0 if empty?
    map {|f| f.never_lines.count }.inject(&:+)
  end

  # Returns the count of skipped lines
  def skipped_lines
    return 0.0 if empty?
    map {|f| f.skipped_lines.count }.inject(&:+)
  end

  # Returns the overall amount of relevant lines of code across all files in this list
  def lines_of_code
    covered_lines + missed_lines
  end

  # Computes the coverage based upon lines covered and lines missed
  def covered_percent
    return 100.0 if empty? or lines_of_code == 0
    covered_lines * 100.0 / lines_of_code
  end

  # Computes the strength (hits / line) based upon lines covered and lines missed
  def covered_strength
    return 0 if empty? or lines_of_code == 0
    map {|f| f.covered_strength * f.lines_of_code }.inject(&:+) / lines_of_code
  end
end

Version data entries

6 entries across 3 versions & 2 rubygems

Version Path
apl-library-0.0.90 vendor/bundle/ruby/1.9.1/gems/simplecov-0.8.2/lib/simplecov/file_list.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.9.1/gems/simplecov-0.8.2/lib/simplecov/file_list.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/2.1.0/gems/simplecov-0.8.2/lib/simplecov/file_list.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/simplecov-0.8.2/lib/simplecov/file_list.rb
simplecov-0.8.2 lib/simplecov/file_list.rb
simplecov-0.8.1 lib/simplecov/file_list.rb