diff options
author | Yusuke Endoh <mame@ruby-lang.org> | 2021-10-25 20:00:51 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-25 20:00:51 +0900 |
commit | 86e3d77abb8a033650937710d1ab009e98647494 (patch) | |
tree | 928732b8a0bb6f9067ceb659f1d72bc32ddcb55b /spec | |
parent | 54379e3d7d297cc8b3ea61ad98c6cc337dc04882 (diff) | |
download | ruby-86e3d77abb8a033650937710d1ab009e98647494.tar.gz |
Make Coverage suspendable (#4856)
* Make Coverage suspendable
Add `Coverage.suspend`, `Coverage.resume` and some methods.
[Feature #18176] [ruby-core:105321]
Diffstat (limited to 'spec')
-rw-r--r-- | spec/ruby/library/coverage/result_spec.rb | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/spec/ruby/library/coverage/result_spec.rb b/spec/ruby/library/coverage/result_spec.rb index 6cf5be1346..4cc43e8462 100644 --- a/spec/ruby/library/coverage/result_spec.rb +++ b/spec/ruby/library/coverage/result_spec.rb @@ -65,12 +65,25 @@ describe 'Coverage.result' do result.should == {} end - it 'second Coverage.start does nothing' do - Coverage.start - require @config_file.chomp('.rb') - result = Coverage.result + ruby_version_is ''...'3.1' do + it 'second Coverage.start does nothing' do + Coverage.start + require @config_file.chomp('.rb') + result = Coverage.result + + result.should == { @config_file => [1, 1, 1] } + end + end - result.should == { @config_file => [1, 1, 1] } + ruby_version_is '3.1' do + it 'second Coverage.start give exception' do + Coverage.start + -> { + require @config_file.chomp('.rb') + }.should raise_error(RuntimeError, 'coverage measurement is already setup') + ensure + Coverage.result + end end it 'does not include the file starting coverage since it is not tracked' do |