From 73fc703f7cbb2e6dfd50897d26b37fe8e76064e3 Mon Sep 17 00:00:00 2001 From: drbrain Date: Sat, 30 Nov 2013 23:27:52 +0000 Subject: * lib/rubygems: Update to RubyGems master 66e5c39. Notable changes: Implement gem.deps.rb (Gemfile) .lock support Fixed `gem uninstall` for a relative directory in GEM_HOME. * test/rubygems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- .../test_gem_resolver_git_specification.rb | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'test/rubygems/test_gem_resolver_git_specification.rb') diff --git a/test/rubygems/test_gem_resolver_git_specification.rb b/test/rubygems/test_gem_resolver_git_specification.rb index d724106f08..b0163bc782 100644 --- a/test/rubygems/test_gem_resolver_git_specification.rb +++ b/test/rubygems/test_gem_resolver_git_specification.rb @@ -46,5 +46,39 @@ class TestGemResolverGitSpecification < Gem::TestCase assert called end + # functional test for Gem::Ext::Builder + + def test_install_extension + name, _, repository, = git_gem 'a', 1 do |s| + s.extensions << 'ext/extconf.rb' + end + + Dir.chdir 'git/a' do + FileUtils.mkdir_p 'ext/lib' + + open 'ext/extconf.rb', 'w' do |io| + io.puts 'require "mkmf"' + io.puts 'create_makefile "a"' + end + + FileUtils.touch 'ext/lib/b.rb' + + system @git, 'add', 'ext/extconf.rb' + system @git, 'add', 'ext/lib/b.rb' + + system @git, 'commit', '--quiet', '-m', 'Add extension files' + end + + source = Gem::Source::Git.new name, repository, 'master', true + + spec = source.specs.first + + git_spec = Gem::Resolver::GitSpecification.new @set, spec, source + + git_spec.install({}) + + assert_path_exists File.join git_spec.spec.extension_install_dir, 'b.rb' + end + end -- cgit v1.2.3