From bbe56a643734025aef6a3cbeb07c5306505040f6 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 12 Dec 2022 09:09:23 +0900 Subject: Merge RubyGems/Bundler master from https://github.com/rubygems/rubygems/commit/bfb0ae69776069155d2092702bfbb5a12617d85a --- test/rubygems/test_gem.rb | 9 +-- test/rubygems/test_gem_command_manager.rb | 2 +- test/rubygems/test_gem_requirement.rb | 2 +- test/rubygems/test_require.rb | 101 +++++++++++++++--------------- 4 files changed, 53 insertions(+), 61 deletions(-) (limited to 'test/rubygems') diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb index dd2440b068..ea8aebb785 100644 --- a/test/rubygems/test_gem.rb +++ b/test/rubygems/test_gem.rb @@ -2061,13 +2061,8 @@ You may need to `bundle install` to install missing gems end def redefine_method(base, method, new_result) - if RUBY_VERSION >= "2.5" - base.alias_method(method, method) - base.define_method(method) { new_result } - else - base.send(:alias_method, method, method) - base.send(:define_method, method) { new_result } - end + base.alias_method(method, method) + base.define_method(method) { new_result } end def with_plugin(path) diff --git a/test/rubygems/test_gem_command_manager.rb b/test/rubygems/test_gem_command_manager.rb index b8f35192ae..0b533329a9 100644 --- a/test/rubygems/test_gem_command_manager.rb +++ b/test/rubygems/test_gem_command_manager.rb @@ -76,7 +76,7 @@ class TestGemCommandManager < Gem::TestCase message = "Unknown command pish".dup - if RUBY_VERSION >= "2.4" && defined?(DidYouMean::SPELL_CHECKERS) && defined?(DidYouMean::Correctable) + if defined?(DidYouMean::SPELL_CHECKERS) && defined?(DidYouMean::Correctable) message << "\nDid you mean? \"push\"" end diff --git a/test/rubygems/test_gem_requirement.rb b/test/rubygems/test_gem_requirement.rb index 29bb264454..130ea6297d 100644 --- a/test/rubygems/test_gem_requirement.rb +++ b/test/rubygems/test_gem_requirement.rb @@ -83,7 +83,7 @@ class TestGemRequirement < Gem::TestCase Gem::Requirement.parse(Gem::Version.new("2")) end - if RUBY_VERSION >= "2.5" && !(Gem.java_platform? && ENV["JRUBY_OPTS"].to_s.include?("--debug")) + if !(Gem.java_platform? && ENV["JRUBY_OPTS"].to_s.include?("--debug")) def test_parse_deduplication assert_same "~>", Gem::Requirement.parse("~> 1").first end diff --git a/test/rubygems/test_require.rb b/test/rubygems/test_require.rb index 222bdcfb28..dff945f625 100644 --- a/test/rubygems/test_require.rb +++ b/test/rubygems/test_require.rb @@ -596,76 +596,73 @@ class TestGemRequire < Gem::TestCase assert_empty unresolved_names end - # uplevel is 2.5+ only - if RUBY_VERSION >= "2.5" - ["", "Kernel."].each do |prefix| - define_method "test_no_kernel_require_in_#{prefix.tr(".", "_")}warn_with_uplevel" do - Dir.mktmpdir("warn_test") do |dir| - File.write(dir + "/sub.rb", "#{prefix}warn 'uplevel', 'test', uplevel: 1\n") - File.write(dir + "/main.rb", "require 'sub'\n") - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "-I", dir, "main.rb") - end - assert_match(/main\.rb:1: warning: uplevel\ntest\n$/, err) - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "-I", dir, "main.rb") - end - assert_match(/main\.rb:1: warning: uplevel\ntest\n$/, err) + ["", "Kernel."].each do |prefix| + define_method "test_no_kernel_require_in_#{prefix.tr(".", "_")}warn_with_uplevel" do + Dir.mktmpdir("warn_test") do |dir| + File.write(dir + "/sub.rb", "#{prefix}warn 'uplevel', 'test', uplevel: 1\n") + File.write(dir + "/main.rb", "require 'sub'\n") + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "-I", dir, "main.rb") end - end - - define_method "test_no_other_behavioral_changes_with_#{prefix.tr(".", "_")}warn" do - Dir.mktmpdir("warn_test") do |dir| - File.write(dir + "/main.rb", "#{prefix}warn({x:1}, {y:2}, [])\n") - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "main.rb") - end - assert_match(/{:x=>1}\n{:y=>2}\n$/, err) - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "main.rb") - end - assert_match(/{:x=>1}\n{:y=>2}\n$/, err) + assert_match(/main\.rb:1: warning: uplevel\ntest\n$/, err) + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "-I", dir, "main.rb") end + assert_match(/main\.rb:1: warning: uplevel\ntest\n$/, err) end end - def test_no_crash_when_overriding_warn_with_warning_module + define_method "test_no_other_behavioral_changes_with_#{prefix.tr(".", "_")}warn" do Dir.mktmpdir("warn_test") do |dir| - File.write(dir + "/main.rb", "module Warning; def warn(str); super; end; end; warn 'Foo Bar'") + File.write(dir + "/main.rb", "#{prefix}warn({x:1}, {y:2}, [])\n") _, err = capture_subprocess_io do system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "main.rb") end - assert_match(/Foo Bar\n$/, err) + assert_match(/{:x=>1}\n{:y=>2}\n$/, err) _, err = capture_subprocess_io do system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "main.rb") end - assert_match(/Foo Bar\n$/, err) + assert_match(/{:x=>1}\n{:y=>2}\n$/, err) end end + end - def test_expected_backtrace_location_when_inheriting_from_basic_object_and_including_kernel - Dir.mktmpdir("warn_test") do |dir| - File.write(dir + "/main.rb", "\nrequire 'sub'\n") - File.write(dir + "/sub.rb", <<-'RUBY') - require 'rubygems' - class C < BasicObject - include ::Kernel - def deprecated - warn "This is a deprecated method", uplevel: 2 - end - end - C.new.deprecated - RUBY + def test_no_crash_when_overriding_warn_with_warning_module + Dir.mktmpdir("warn_test") do |dir| + File.write(dir + "/main.rb", "module Warning; def warn(str); super; end; end; warn 'Foo Bar'") + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "main.rb") + end + assert_match(/Foo Bar\n$/, err) + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "main.rb") + end + assert_match(/Foo Bar\n$/, err) + end + end - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "-I", dir, "main.rb") - end - assert_match(/main\.rb:2: warning: This is a deprecated method$/, err) - _, err = capture_subprocess_io do - system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "-I", dir, "main.rb") + def test_expected_backtrace_location_when_inheriting_from_basic_object_and_including_kernel + Dir.mktmpdir("warn_test") do |dir| + File.write(dir + "/main.rb", "\nrequire 'sub'\n") + File.write(dir + "/sub.rb", <<-'RUBY') + require 'rubygems' + class C < BasicObject + include ::Kernel + def deprecated + warn "This is a deprecated method", uplevel: 2 + end end - assert_match(/main\.rb:2: warning: This is a deprecated method$/, err) + C.new.deprecated + RUBY + + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--disable=gems", "-C", dir, "-I", dir, "main.rb") + end + assert_match(/main\.rb:2: warning: This is a deprecated method$/, err) + _, err = capture_subprocess_io do + system(*ruby_with_rubygems_in_load_path, "-w", "--enable=gems", "-C", dir, "-I", dir, "main.rb") end + assert_match(/main\.rb:2: warning: This is a deprecated method$/, err) end end -- cgit v1.2.3