From a86eacf552c0f3a7862d6891cf174007d96f656a Mon Sep 17 00:00:00 2001 From: tenderlove Date: Fri, 13 Feb 2015 15:53:47 +0000 Subject: * ext/coverage/coverage.c: Add Coverage.peek_result. Allows you to capture coverage information without stopping the coverage tool. [ruby-core:67940] [Feature #10816] * test/coverage/test_coverage.rb: test for change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/coverage/test_coverage.rb | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'test/coverage/test_coverage.rb') diff --git a/test/coverage/test_coverage.rb b/test/coverage/test_coverage.rb index f4f192a578..bade668fdb 100644 --- a/test/coverage/test_coverage.rb +++ b/test/coverage/test_coverage.rb @@ -16,6 +16,32 @@ class TestCoverage < Test::Unit::TestCase end end + def test_coverage_snapshot + loaded_features = $".dup + + Dir.mktmpdir {|tmp| + Dir.chdir(tmp) { + File.open("test.rb", "w") do |f| + f.puts <<-EOS + def coverage_test_method + :ok + end + EOS + end + + Coverage.start + require tmp + '/test.rb' + cov = Coverage.peek_result[tmp + '/test.rb'] + coverage_test_method + cov2 = Coverage.peek_result[tmp + '/test.rb'] + assert_equal cov[1] + 1, cov2[1] + assert_equal cov2, Coverage.result[tmp + '/test.rb'] + } + } + ensure + $".replace loaded_features + end + def test_restarting_coverage loaded_features = $".dup -- cgit v1.2.3