Module: SimpleCov::RawCoverage
- Defined in:
- lib/simplecov/raw_coverage.rb
Class Method Summary collapse
- .merge_file_coverage(file1, file2) ⇒ Object
- .merge_line_coverage(count1, count2) ⇒ Object
-
.merge_results(*results) ⇒ Object
Merges multiple Coverage.result hashes.
-
.merge_resultsets(result1, result2) ⇒ Object
Merges two Coverage.result hashes.
Class Method Details
.merge_file_coverage(file1, file2) ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/simplecov/raw_coverage.rb', line 21 def merge_file_coverage(file1, file2) return (file1 || file2).dup unless file1 && file2 file1.map.with_index do |count1, index| count2 = file2[index] merge_line_coverage(count1, count2) end end |
.merge_line_coverage(count1, count2) ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/simplecov/raw_coverage.rb', line 30 def merge_line_coverage(count1, count2) sum = count1.to_i + count2.to_i if sum.zero? && (count1.nil? || count2.nil?) nil else sum end end |
.merge_results(*results) ⇒ Object
Merges multiple Coverage.result hashes
6 7 8 9 10 |
# File 'lib/simplecov/raw_coverage.rb', line 6 def merge_results(*results) results.reduce({}) do |result, merged| merge_resultsets(result, merged) end end |
.merge_resultsets(result1, result2) ⇒ Object
Merges two Coverage.result hashes
13 14 15 16 17 18 19 |
# File 'lib/simplecov/raw_coverage.rb', line 13 def merge_resultsets(result1, result2) (result1.keys | result2.keys).each_with_object({}) do |filename, merged| file1 = result1[filename] file2 = result2[filename] merged[filename] = merge_file_coverage(file1, file2) end end |