diff options
Diffstat (limited to 'test/rubygems/test_gem.rb')
-rw-r--r-- | test/rubygems/test_gem.rb | 118 |
1 files changed, 37 insertions, 81 deletions
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb index af927ffa29..c90ad2d41a 100644 --- a/test/rubygems/test_gem.rb +++ b/test/rubygems/test_gem.rb @@ -465,55 +465,43 @@ class TestGem < Gem::TestCase end def test_default_path - orig_vendordir = RbConfig::CONFIG['vendordir'] - RbConfig::CONFIG['vendordir'] = File.join @tempdir, 'vendor' + vendordir(File.join(@tempdir, 'vendor')) do + FileUtils.rm_rf Gem.user_home - FileUtils.rm_rf Gem.user_home + expected = [Gem.default_dir] - expected = [Gem.default_dir] - - assert_equal expected, Gem.default_path - ensure - RbConfig::CONFIG['vendordir'] = orig_vendordir + assert_equal expected, Gem.default_path + end end def test_default_path_missing_vendor - orig_vendordir = RbConfig::CONFIG['vendordir'] - RbConfig::CONFIG.delete 'vendordir' - - FileUtils.rm_rf Gem.user_home + vendordir(nil) do + FileUtils.rm_rf Gem.user_home - expected = [Gem.default_dir] + expected = [Gem.default_dir] - assert_equal expected, Gem.default_path - ensure - RbConfig::CONFIG['vendordir'] = orig_vendordir + assert_equal expected, Gem.default_path + end end def test_default_path_user_home - orig_vendordir = RbConfig::CONFIG['vendordir'] - RbConfig::CONFIG['vendordir'] = File.join @tempdir, 'vendor' + vendordir(File.join(@tempdir, 'vendor')) do + expected = [Gem.user_dir, Gem.default_dir] - expected = [Gem.user_dir, Gem.default_dir] - - assert_equal expected, Gem.default_path - ensure - RbConfig::CONFIG['vendordir'] = orig_vendordir + assert_equal expected, Gem.default_path + end end def test_default_path_vendor_dir - orig_vendordir = RbConfig::CONFIG['vendordir'] - RbConfig::CONFIG['vendordir'] = File.join @tempdir, 'vendor' - - FileUtils.mkdir_p Gem.vendor_dir + vendordir(File.join(@tempdir, 'vendor')) do + FileUtils.mkdir_p Gem.vendor_dir - FileUtils.rm_rf Gem.user_home + FileUtils.rm_rf Gem.user_home - expected = [Gem.default_dir, Gem.vendor_dir] + expected = [Gem.default_dir, Gem.vendor_dir] - assert_equal expected, Gem.default_path - ensure - RbConfig::CONFIG['vendordir'] = orig_vendordir + assert_equal expected, Gem.default_path + end end def test_self_default_sources @@ -706,7 +694,7 @@ class TestGem < Gem::TestCase assert_equal expected, Gem.find_files('sff/discover').sort assert_equal expected, Gem.find_files('sff/**.rb').sort, '[ruby-core:31730]' ensure - assert_equal cwd, actual_load_path.shift + assert_equal cwd, actual_load_path.shift unless Gem.java_platform? end def test_self_find_latest_files @@ -1232,10 +1220,12 @@ class TestGem < Gem::TestCase refute Gem.try_activate 'nonexistent' end - expected = "Ignoring ext-1 because its extensions are not built. " + - "Try: gem pristine ext --version 1\n" + unless Gem.java_platform? + expected = "Ignoring ext-1 because its extensions are not built. " + + "Try: gem pristine ext --version 1\n" - assert_equal expected, err + assert_equal expected, err + end end def test_self_use_paths_with_nils @@ -1303,7 +1293,6 @@ class TestGem < Gem::TestCase end def test_self_needs - util_clear_gems a = util_spec "a", "1" b = util_spec "b", "1", "c" => nil c = util_spec "c", "2" @@ -1322,7 +1311,6 @@ class TestGem < Gem::TestCase def test_self_needs_picks_up_unresolved_deps save_loaded_features do - util_clear_gems a = util_spec "a", "1" b = util_spec "b", "1", "c" => nil c = util_spec "c", "2" @@ -1364,11 +1352,13 @@ class TestGem < Gem::TestCase end def test_self_vendor_dir - expected = - File.join RbConfig::CONFIG['vendordir'], 'gems', - RbConfig::CONFIG['ruby_version'] + vendordir(File.join(@tempdir, 'vendor')) do + expected = + File.join RbConfig::CONFIG['vendordir'], 'gems', + RbConfig::CONFIG['ruby_version'] - assert_equal expected, Gem.vendor_dir + assert_equal expected, Gem.vendor_dir + end end def test_self_vendor_dir_ENV_GEM_VENDOR @@ -1379,12 +1369,9 @@ class TestGem < Gem::TestCase end def test_self_vendor_dir_missing - orig_vendordir = RbConfig::CONFIG['vendordir'] - RbConfig::CONFIG.delete 'vendordir' - - assert_nil Gem.vendor_dir - ensure - RbConfig::CONFIG['vendordir'] = orig_vendordir + vendordir(nil) do + assert_nil Gem.vendor_dir + end end def test_load_plugins @@ -1514,8 +1501,6 @@ class TestGem < Gem::TestCase end def test_auto_activation_of_specific_gemdeps_file - util_clear_gems - a = util_spec "a", "1", nil, "lib/a.rb" b = util_spec "b", "1", nil, "lib/b.rb" c = util_spec "c", "1", nil, "lib/c.rb" @@ -1538,8 +1523,6 @@ class TestGem < Gem::TestCase end def test_auto_activation_of_used_gemdeps_file - util_clear_gems - a = util_spec "a", "1", nil, "lib/a.rb" b = util_spec "b", "1", nil, "lib/b.rb" c = util_spec "c", "1", nil, "lib/c.rb" @@ -1571,7 +1554,7 @@ class TestGem < Gem::TestCase end def test_looks_for_gemdeps_files_automatically_on_start - util_clear_gems + skip "Requiring bundler messes things up" if Gem.java_platform? a = util_spec "a", "1", nil, "lib/a.rb" b = util_spec "b", "1", nil, "lib/b.rb" @@ -1607,7 +1590,7 @@ class TestGem < Gem::TestCase end def test_looks_for_gemdeps_files_automatically_on_start_in_parent_dir - util_clear_gems + skip "Requiring bundler messes things up" if Gem.java_platform? a = util_spec "a", "1", nil, "lib/a.rb" b = util_spec "b", "1", nil, "lib/b.rb" @@ -1674,33 +1657,6 @@ class TestGem < Gem::TestCase assert_nil Gem.find_unresolved_default_spec("README") end - def test_default_gems_use_full_paths - begin - if defined?(RUBY_ENGINE) - engine = RUBY_ENGINE - Object.send :remove_const, :RUBY_ENGINE - end - Object.const_set :RUBY_ENGINE, 'ruby' - - refute Gem.default_gems_use_full_paths? - ensure - Object.send :remove_const, :RUBY_ENGINE - Object.const_set :RUBY_ENGINE, engine if engine - end - - begin - if defined?(RUBY_ENGINE) - engine = RUBY_ENGINE - Object.send :remove_const, :RUBY_ENGINE - end - Object.const_set :RUBY_ENGINE, 'jruby' - assert Gem.default_gems_use_full_paths? - ensure - Object.send :remove_const, :RUBY_ENGINE - Object.const_set :RUBY_ENGINE, engine if engine - end - end - def test_use_gemdeps gem_deps_file = 'gem.deps.rb'.untaint spec = util_spec 'a', 1 |