diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-10-16 00:14:16 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-10-16 00:14:16 +0000 |
commit | 28918eac58eb6e2681d10839ac0d1430b2a4f1f9 (patch) | |
tree | 3c2c9e36118efe1d9406acdd14c186788879bea3 /test/rubygems/test_gem_dependency_installer.rb | |
parent | cfe1458078b8cf36e490c516977c52e1faa9e88a (diff) | |
download | ruby-28918eac58eb6e2681d10839ac0d1430b2a4f1f9.tar.gz |
* lib/rubygems: Update to RubyGems master commit 2a74263. This fixes
several bugs in RubyGems 2.2.0.preview.1.
* test/rubygems: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems/test_gem_dependency_installer.rb')
-rw-r--r-- | test/rubygems/test_gem_dependency_installer.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_dependency_installer.rb b/test/rubygems/test_gem_dependency_installer.rb index af6b922fe3..8433be6bd0 100644 --- a/test/rubygems/test_gem_dependency_installer.rb +++ b/test/rubygems/test_gem_dependency_installer.rb @@ -388,6 +388,41 @@ class TestGemDependencyInstaller < Gem::TestCase assert_equal %w[b-1], inst.installed_gems.map { |s| s.full_name } end + def test_install_dependency_existing_extension + extconf_rb = File.join @gemhome, 'gems', 'e-1', 'extconf.rb' + FileUtils.mkdir_p File.dirname extconf_rb + + open extconf_rb, 'w' do |io| + io.write <<-EXTCONF_RB + require 'mkmf' + create_makefile 'e' + EXTCONF_RB + end + + e1 = new_spec 'e', '1', nil, 'extconf.rb' do |s| + s.extensions << 'extconf.rb' + end + e1_gem = File.join @tempdir, 'gems', "#{e1.full_name}.gem" + + _, f1_gem = util_gem 'f', '1', 'e' => nil + + Gem::Installer.new(e1_gem).install + FileUtils.rm_r e1.extension_install_dir + + FileUtils.mv e1_gem, @tempdir + FileUtils.mv f1_gem, @tempdir + inst = nil + + Dir.chdir @tempdir do + inst = Gem::DependencyInstaller.new + inst.install 'f' + end + + assert_equal %w[f-1], inst.installed_gems.map { |s| s.full_name } + + assert_path_exists e1.extension_install_dir + end + def test_install_dependency_old _, e1_gem = util_gem 'e', '1' _, f1_gem = util_gem 'f', '1', 'e' => nil |