Class: AeTestCoverage::Collectors::RubyCoverageCollector
- Inherits:
-
Object
- Object
- AeTestCoverage::Collectors::RubyCoverageCollector
- Defined in:
- lib/ae_test_coverage/collectors/ruby_coverage_collector.rb
Constant Summary collapse
- @@initialized =
false
Instance Method Summary collapse
- #covered_files ⇒ Object
-
#initialize ⇒ RubyCoverageCollector
constructor
A new instance of RubyCoverageCollector.
- #on_start ⇒ Object
Constructor Details
#initialize ⇒ RubyCoverageCollector
Returns a new instance of RubyCoverageCollector.
8 9 10 11 12 13 14 |
# File 'lib/ae_test_coverage/collectors/ruby_coverage_collector.rb', line 8 def initialize unless @@initialized require 'coverage' Coverage.start(oneshot_lines: true, methods: true) @@initialized = true end end |
Instance Method Details
#covered_files ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/ae_test_coverage/collectors/ruby_coverage_collector.rb', line 20 def covered_files coverage = Coverage.result(clear: true) {}.tap do |coverage_data| coverage.each do |file, data| next if AeTestCoverage.exclude_file?(file) called_methods = data[:methods].select { |_, call_count| call_count > 0 } oneshot_lines = reject_oneshot_lines_from_methods(called_methods, data[:oneshot_lines]) coverage_data[file] = {methods: called_methods, oneshot_lines: oneshot_lines} unless called_methods.empty? && oneshot_lines.empty? end end end |
#on_start ⇒ Object
16 17 18 |
# File 'lib/ae_test_coverage/collectors/ruby_coverage_collector.rb', line 16 def on_start Coverage.result(clear: true) end |