aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_config_file.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-25 07:30:41 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-25 07:30:41 +0000
commite276482efc1c274ba9cfe17f5e6fbe02819a15bb (patch)
treebd7593e76ccb8374388f6ec5f8f6f639e696a7fb /test/rubygems/test_gem_config_file.rb
parentbe26224be568166b5db530cd377bf71d78e985d8 (diff)
downloadruby-e276482efc1c274ba9cfe17f5e6fbe02819a15bb.tar.gz
* lib/rubygems/config_file.rb: Lazily load .gem/credentials to only
check permissions when necessary. RubyGems bug #465 * test/rubygems/test_gem_config_file.rb: Test for the above. * test/rubygems/test_gem_commands_push_command.rb: Remove duplicated test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems/test_gem_config_file.rb')
-rw-r--r--test/rubygems/test_gem_config_file.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_config_file.rb b/test/rubygems/test_gem_config_file.rb
index d17817332c..13f1c34b50 100644
--- a/test/rubygems/test_gem_config_file.rb
+++ b/test/rubygems/test_gem_config_file.rb
@@ -164,6 +164,21 @@ class TestGemConfigFile < Gem::TestCase
assert_equal 2048, @cfg.bulk_threshold
end
+ def test_api_keys
+ assert_nil @cfg.instance_variable_get :@api_keys
+
+ temp_cred = File.join Gem.user_home, '.gem', 'credentials'
+ FileUtils.mkdir File.dirname(temp_cred)
+ File.open temp_cred, 'w', 0600 do |fp|
+ fp.puts ':rubygems_api_key: 701229f217cdf23b1344c7b4b54ca97'
+ end
+
+ util_config_file
+
+ assert_equal({:rubygems => '701229f217cdf23b1344c7b4b54ca97'},
+ @cfg.api_keys)
+ end
+
def test_check_credentials_permissions
skip 'chmod not supported' if win_platform?