From 24f3e397e957a6747a2067edd831bc7920e204ec Mon Sep 17 00:00:00 2001 From: Samuel Williams Date: Sat, 8 Oct 2022 00:33:40 +1300 Subject: Add spec for `Coverage.supported?` and `start(eval: true)`. (#6499) * Don't emit coverage for eval when eval coverage is disabled. --- spec/ruby/library/coverage/result_spec.rb | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) (limited to 'spec/ruby/library/coverage') diff --git a/spec/ruby/library/coverage/result_spec.rb b/spec/ruby/library/coverage/result_spec.rb index 61283e4545..4bcce00cd7 100644 --- a/spec/ruby/library/coverage/result_spec.rb +++ b/spec/ruby/library/coverage/result_spec.rb @@ -106,15 +106,35 @@ describe 'Coverage.result' do end ruby_version_is '3.2' do - it 'returns the correct results when eval is used' do - Coverage.start + it 'indicates support for different features' do + Coverage.supported?(:lines).should == true + end + + it 'returns the correct results when eval coverage is enabled' do + Coverage.supported?(:eval).should == true + + Coverage.start(lines: true, eval: true) require @eval_code_file.chomp('.rb') result = Coverage.result result.should == { - @eval_code_file => [ - 1, nil, 1, nil, 1, 1, nil, nil, nil, nil, 1 - ] + @eval_code_file => { + lines: [1, nil, 1, nil, 1, 1, nil, nil, nil, nil, 1] + } + } + end + + it 'returns the correct results when eval coverage is enabled' do + Coverage.supported?(:eval).should == true + + Coverage.start(lines: true, eval: false) + require @eval_code_file.chomp('.rb') + result = Coverage.result + + result.should == { + @eval_code_file => { + lines: [1, nil, 1, nil, 1, nil, nil, nil, nil, nil, 1] + } } end end -- cgit v1.2.3