summaryrefslogtreecommitdiff
path: root/test/-ext-/bug_reporter/test_bug_reporter.rb
diff options
context:
space:
mode:
authorNoah Gibbs <noah.gibbs@shopify.com>2022-07-20 15:48:58 +0100
committerGitHub <noreply@github.com>2022-07-20 10:48:58 -0400
commit6140edb5df29bc9362ded379d6e2e72e4584d07a (patch)
treec8033042278c291b8e81000ec969a7398e0c3625 /test/-ext-/bug_reporter/test_bug_reporter.rb
parent86d061294d3cc1656e18d0e1fd4b4f290da16944 (diff)
Match +YJIT in Ruby desc when testing segv (#6141)
In test_bug_reporter and test_rubyoptions we intentionally test child processes that cause SEGV. We run them with YJIT if the parent uses YJIT so that the text description matches the parent RUBY_DESCRIPTION.
Notes
Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
Diffstat (limited to 'test/-ext-/bug_reporter/test_bug_reporter.rb')
-rw-r--r--test/-ext-/bug_reporter/test_bug_reporter.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/test/-ext-/bug_reporter/test_bug_reporter.rb b/test/-ext-/bug_reporter/test_bug_reporter.rb
index 8e1121f908..81d2ca4674 100644
--- a/test/-ext-/bug_reporter/test_bug_reporter.rb
+++ b/test/-ext-/bug_reporter/test_bug_reporter.rb
@@ -4,6 +4,10 @@ require 'tmpdir'
require_relative '../../lib/jit_support'
class TestBugReporter < Test::Unit::TestCase
+ def yjit_enabled?
+ defined?(RubyVM::YJIT.enabled?) && RubyVM::YJIT.enabled?
+ end
+
def test_bug_reporter_add
omit if ENV['RUBY_ON_BUG']
@@ -22,6 +26,7 @@ class TestBugReporter < Test::Unit::TestCase
no_core = "Process.setrlimit(Process::RLIMIT_CORE, 0); " if defined?(Process.setrlimit) && defined?(Process::RLIMIT_CORE)
args = ["--disable-gems", "-r-test-/bug_reporter",
"-C", tmpdir]
+ args.push("--yjit") if yjit_enabled? # We want the printed description to match this process's RUBY_DESCRIPTION
stdin = "#{no_core}register_sample_bug_reporter(12345); Process.kill :SEGV, $$"
assert_in_out_err(args, stdin, [], expected_stderr, encoding: "ASCII-8BIT")
ensure