From 506512c028b0967ee04239d17a92ccb42b3241b1 Mon Sep 17 00:00:00 2001 From: k0kubun Date: Thu, 24 May 2018 14:32:05 +0000 Subject: spec/ruby: fix RUBY_DESCRIPTION check with JIT enabled `make test-spec` adds `-r./$(arch)-fake` to pass header options. But the $(arch)-fake.rb unexpectedly modifies RUBY_DESCRIPTION and it always drops +JIT from it since the fake.rb is built with BOOTSTRAPRUBY, which can be miniruby. miniruby can't find MJIT header and thus mjit_init_p is always FALSE. So, to pass `make test-spec` with JIT enabled, we can't use RUBY_DESCRIPTION. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- spec/ruby/command_line/dash_v_spec.rb | 9 ++++++++- spec/ruby/command_line/rubyopt_spec.rb | 12 ++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'spec/ruby/command_line') diff --git a/spec/ruby/command_line/dash_v_spec.rb b/spec/ruby/command_line/dash_v_spec.rb index 995a46a87f..801ea42846 100644 --- a/spec/ruby/command_line/dash_v_spec.rb +++ b/spec/ruby/command_line/dash_v_spec.rb @@ -6,7 +6,14 @@ describe "The -v command line option" do describe "when used alone" do it "prints version and ends" do - ruby_exe(nil, args: '-v').include?(RUBY_DESCRIPTION).should == true + ruby_description = + if RubyVM::MJIT.enabled? + # fake.rb always drops +JIT from RUBY_DESCRIPTION. This resurrects that. + RUBY_DESCRIPTION.sub(/ \[[^\]]+\]$/, ' +JIT\0') + else + RUBY_DESCRIPTION + end + ruby_exe(nil, args: '-v').include?(ruby_description).should == true end end end diff --git a/spec/ruby/command_line/rubyopt_spec.rb b/spec/ruby/command_line/rubyopt_spec.rb index 81a57f97c3..cfb86dfc58 100644 --- a/spec/ruby/command_line/rubyopt_spec.rb +++ b/spec/ruby/command_line/rubyopt_spec.rb @@ -22,14 +22,22 @@ describe "Processing RUBYOPT" do result.should =~ /value of \$DEBUG is true/ end + ruby_description = + if RubyVM::MJIT.enabled? + # fake.rb always drops +JIT from RUBY_DESCRIPTION. This resurrects that. + RUBY_DESCRIPTION.sub(/ \[[^\]]+\]$/, ' +JIT\0') + else + RUBY_DESCRIPTION + end + it "prints the version number for '-v'" do ENV["RUBYOPT"] = '-v' - ruby_exe("")[/\A.*/].should == RUBY_DESCRIPTION + ruby_exe("")[/\A.*/].should == ruby_description end it "ignores whitespace around the option" do ENV["RUBYOPT"] = ' -v ' - ruby_exe("")[/\A.*/].should == RUBY_DESCRIPTION + ruby_exe("")[/\A.*/].should == ruby_description end it "sets $VERBOSE to true for '-w'" do -- cgit v1.2.3