summaryrefslogtreecommitdiff
path: root/test/rubygems/test_gem.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/test_gem.rb')
-rw-r--r--test/rubygems/test_gem.rb118
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