Module: DeepCover::Tools::BuiltinCoverage
- Defined in:
- lib/deep_cover/tools/builtin_coverage.rb
Instance Method Summary collapse
- #builtin_coverage(source, fn, lineno) ⇒ Object
-
#run_with_line_coverage(source, fn = nil, lineno = 1) ⇒ Object
Executes the source as if it was in the specified file while builtin coverage information is still captured.
Instance Method Details
#builtin_coverage(source, fn, lineno) ⇒ Object
7 8 9 10 11 12 13 14 |
# File 'lib/deep_cover/tools/builtin_coverage.rb', line 7 def builtin_coverage(source, fn, lineno) fn = File.absolute_path(File.(fn)) ::Coverage.start Tools.silence_warnings do execute_sample -> { run_with_line_coverage(source, fn, lineno) } end unshift_coverage(::Coverage.result.fetch(fn), lineno) end |
#run_with_line_coverage(source, fn = nil, lineno = 1) ⇒ Object
Executes the source as if it was in the specified file while builtin coverage information is still captured
19 20 21 22 |
# File 'lib/deep_cover/tools/builtin_coverage.rb', line 19 def run_with_line_coverage(source, fn = nil, lineno = 1) source = shift_source(source, lineno) Object.to_java.getRuntime.executeScript(source, fn) end |