diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2022-10-03 11:21:42 +0200 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2022-10-03 19:54:24 +0900 |
commit | b7a61cb485a9bfaa52107f57782e53365f4bf59a (patch) | |
tree | 62004de9b9c98a4004183b438d1086c46f150f8c | |
parent | b91f685a2615ef957210f5e3a50c0e8299c20c55 (diff) | |
download | ruby-b7a61cb485a9bfaa52107f57782e53365f4bf59a.tar.gz |
[rubygems/rubygems] Revert "Cleaup unnecessary code"
Unclear why, but https://github.com/rubygems/rubygems/commit/2e05dadbc5de created some
warnings in ruby-core CI, so let's revert it.
https://github.com/rubygems/rubygems/commit/729ce3a6e1
-rw-r--r-- | test/rubygems/rubygems_plugin.rb | 9 | ||||
-rw-r--r-- | test/rubygems/test_gem.rb | 11 |
2 files changed, 20 insertions, 0 deletions
diff --git a/test/rubygems/rubygems_plugin.rb b/test/rubygems/rubygems_plugin.rb index c18f13d2ed..b538487bbf 100644 --- a/test/rubygems/rubygems_plugin.rb +++ b/test/rubygems/rubygems_plugin.rb @@ -1,6 +1,15 @@ # frozen_string_literal: true require "rubygems/command_manager" +## +# This is an example of exactly what NOT to do. +# +# DO NOT include code like this in your rubygems_plugin.rb + +module Gem::Commands + remove_const(:InterruptCommand) if defined?(InterruptCommand) +end + class Gem::Commands::InterruptCommand < Gem::Command def initialize super("interrupt", "Raises an Interrupt Exception", {}) diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb index f4c6e8ce76..dd2440b068 100644 --- a/test/rubygems/test_gem.rb +++ b/test/rubygems/test_gem.rb @@ -20,6 +20,8 @@ class TestGem < Gem::TestCase common_installer_setup @additional = %w[a b].map {|d| File.join @tempdir, d } + + util_remove_interrupt_command end def test_self_finish_resolve @@ -1548,10 +1550,14 @@ class TestGem < Gem::TestCase with_plugin("load") { Gem.load_env_plugins } assert_equal :loaded, TEST_PLUGIN_LOAD rescue nil + util_remove_interrupt_command + # Should attempt to cause a StandardError with_plugin("standarderror") { Gem.load_env_plugins } assert_equal :loaded, TEST_PLUGIN_STANDARDERROR rescue nil + util_remove_interrupt_command + # Should attempt to cause an Exception with_plugin("exception") { Gem.load_env_plugins } assert_equal :loaded, TEST_PLUGIN_EXCEPTION rescue nil @@ -2101,6 +2107,11 @@ You may need to `bundle install` to install missing gems spec end + def util_remove_interrupt_command + Gem::Commands.send :remove_const, :InterruptCommand if + Gem::Commands.const_defined? :InterruptCommand + end + def util_cache_dir File.join Gem.dir, "cache" end |