[rubygems/rubygems] Add test for "gem update --system --silent"

https://github.com/rubygems/rubygems/commit/c3fb0db930
This commit is contained in:
Ellen Marie Dash 2020-07-30 17:24:05 -04:00 committed by Hiroshi SHIBATA
parent 7fc8f83edb
commit e8274a7683
Notes: git 2020-09-28 14:54:54 +09:00
2 changed files with 30 additions and 2 deletions

View File

@ -174,13 +174,13 @@ command to remove old versions.
update_dir = File.join Gem.dir, 'gems', "rubygems-update-#{version}"
Dir.chdir update_dir do
say "Installing RubyGems #{version}"
say "Installing RubyGems #{version}" unless options[:silent]
installed = preparing_gem_layout_for(version) do
system Gem.ruby, '--disable-gems', 'setup.rb', *args
end
say "RubyGems system software updated" if installed
say "RubyGems system software updated" if installed unless options[:silent]
end
end

View File

@ -276,6 +276,34 @@ class TestGemCommandsUpdateCommand < Gem::TestCase
Gem.disable_system_update_message = old_disable_system_update_message
end
# The other style of `gem update --system` tests don't actually run
# setup.rb, so we just check that setup.rb gets the `--silent` flag.
def test_execute_system_silent_passed_to_setuprb
@cmd.options[:args] = []
@cmd.options[:system] = true
@cmd.options[:silent] = true
assert_equal true, @cmd.update_rubygems_arguments.include?('--silent')
end
def test_execute_system_silent
spec_fetcher do |fetcher|
fetcher.download 'rubygems-update', 9 do |s|
s.files = %w[setup.rb]
end
end
@cmd.options[:args] = []
@cmd.options[:system] = true
@cmd.options[:silent] = true
use_ui @ui do
@cmd.execute
end
assert_empty @ui.output
end
# before:
# a1 -> c1.2
# after: