From fee5b8f263211faef10ed9f3e43c1e8b34548bbd Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Wed, 25 Jan 2023 16:34:24 +0900 Subject: merge revision(s) 2c93c554019ebdc394d3c51c6d925620d3005f84,f5ea43a2e61789357e9c4b374b4bc6756abeae17: [Backport #19360] Ensure main file has default coverage if required. (#7169) * Extract common code for coverage setup. --- iseq.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) More coverage tests & specs. (#7171) * Add spec for eval and line coverage. * Add test for main file coverage. --- spec/ruby/library/coverage/start_spec.rb | 8 +++++++- test/coverage/autostart.rb | 2 ++ test/coverage/main.rb | 1 + test/coverage/test_coverage.rb | 7 +++++++ 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 test/coverage/autostart.rb create mode 100644 test/coverage/main.rb --- test/coverage/autostart.rb | 2 ++ test/coverage/main.rb | 1 + test/coverage/test_coverage.rb | 7 +++++++ 3 files changed, 10 insertions(+) create mode 100644 test/coverage/autostart.rb create mode 100644 test/coverage/main.rb (limited to 'test/coverage') diff --git a/test/coverage/autostart.rb b/test/coverage/autostart.rb new file mode 100644 index 0000000000..067fe0a40d --- /dev/null +++ b/test/coverage/autostart.rb @@ -0,0 +1,2 @@ +require 'coverage' +Coverage.start(:all) diff --git a/test/coverage/main.rb b/test/coverage/main.rb new file mode 100644 index 0000000000..74f1e95fa3 --- /dev/null +++ b/test/coverage/main.rb @@ -0,0 +1 @@ +puts Coverage.peek_result[__FILE__][:lines] diff --git a/test/coverage/test_coverage.rb b/test/coverage/test_coverage.rb index a2a7718a30..a2efa0d1c0 100644 --- a/test/coverage/test_coverage.rb +++ b/test/coverage/test_coverage.rb @@ -26,6 +26,13 @@ class TestCoverage < Test::Unit::TestCase end; end + def test_coverage_in_main_script + autostart_path = File.expand_path("autostart.rb", __dir__) + main_path = File.expand_path("main.rb", __dir__) + + assert_in_out_err(['-r', autostart_path, main_path], "", ["1"], []) + end + def test_coverage_running? assert_in_out_err(%w[-rcoverage], <<-"end;", ["false", "true", "true", "false"], []) p Coverage.running? -- cgit v1.2.3