mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/rubygems/commands/update_command.rb: Create the installer after
options are processed. [ruby-trunk - Bug #7779] * test/rubygems/test_gem_commands_update_command.rb: Test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
cd8ef79d22
commit
75eb6cc98e
3 changed files with 30 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
Wed Feb 20 09:34:43 2013 Eric Hodel <drbrain@segment7.net>
|
||||||
|
|
||||||
|
* lib/rubygems/commands/update_command.rb: Create the installer after
|
||||||
|
options are processed. [ruby-trunk - Bug #7779]
|
||||||
|
* test/rubygems/test_gem_commands_update_command.rb: Test for the
|
||||||
|
above.
|
||||||
|
|
||||||
Wed Feb 20 07:51:19 2013 Eric Hodel <drbrain@segment7.net>
|
Wed Feb 20 07:51:19 2013 Eric Hodel <drbrain@segment7.net>
|
||||||
|
|
||||||
* lib/rubygems/installer.rb: Use gsub instead of gsub! to avoid
|
* lib/rubygems/installer.rb: Use gsub instead of gsub! to avoid
|
||||||
|
|
|
@ -14,6 +14,8 @@ class Gem::Commands::UpdateCommand < Gem::Command
|
||||||
include Gem::LocalRemoteOptions
|
include Gem::LocalRemoteOptions
|
||||||
include Gem::VersionOption
|
include Gem::VersionOption
|
||||||
|
|
||||||
|
attr_reader :installer # :nodoc:
|
||||||
|
|
||||||
def initialize
|
def initialize
|
||||||
super 'update', 'Update installed gems to the latest version',
|
super 'update', 'Update installed gems to the latest version',
|
||||||
:document => %w[rdoc ri],
|
:document => %w[rdoc ri],
|
||||||
|
@ -39,7 +41,7 @@ class Gem::Commands::UpdateCommand < Gem::Command
|
||||||
add_prerelease_option "as update targets"
|
add_prerelease_option "as update targets"
|
||||||
|
|
||||||
@updated = []
|
@updated = []
|
||||||
@installer = Gem::DependencyInstaller.new options
|
@installer = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
def arguments # :nodoc:
|
def arguments # :nodoc:
|
||||||
|
@ -85,6 +87,9 @@ class Gem::Commands::UpdateCommand < Gem::Command
|
||||||
|
|
||||||
def update_gem name, version = Gem::Requirement.default
|
def update_gem name, version = Gem::Requirement.default
|
||||||
return if @updated.any? { |spec| spec.name == name }
|
return if @updated.any? { |spec| spec.name == name }
|
||||||
|
|
||||||
|
@installer ||= Gem::DependencyInstaller.new options
|
||||||
|
|
||||||
success = false
|
success = false
|
||||||
|
|
||||||
say "Updating #{name}"
|
say "Updating #{name}"
|
||||||
|
|
|
@ -355,6 +355,23 @@ class TestGemCommandsUpdateCommand < Gem::TestCase
|
||||||
assert_empty out
|
assert_empty out
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_execute_user_install
|
||||||
|
util_clear_gems
|
||||||
|
|
||||||
|
Gem::Installer.new(@a1_path).install
|
||||||
|
|
||||||
|
@cmd.handle_options %w[--user-install]
|
||||||
|
|
||||||
|
use_ui @ui do
|
||||||
|
@cmd.execute
|
||||||
|
end
|
||||||
|
|
||||||
|
installer = @cmd.installer
|
||||||
|
user_install = installer.instance_variable_get :@user_install
|
||||||
|
|
||||||
|
assert user_install, 'user_install must be set on the installer'
|
||||||
|
end
|
||||||
|
|
||||||
def test_handle_options_system
|
def test_handle_options_system
|
||||||
@cmd.handle_options %w[--system]
|
@cmd.handle_options %w[--system]
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue