diff options
Diffstat (limited to 'test/rubygems/test_gem_request_set.rb')
-rw-r--r-- | test/rubygems/test_gem_request_set.rb | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/test/rubygems/test_gem_request_set.rb b/test/rubygems/test_gem_request_set.rb index 9b215c2bc7..531b6c09d1 100644 --- a/test/rubygems/test_gem_request_set.rb +++ b/test/rubygems/test_gem_request_set.rb @@ -7,7 +7,7 @@ class TestGemRequestSet < Gem::TestCase Gem::RemoteFetcher.fetcher = @fetcher = Gem::FakeFetcher.new - @DR = Gem::DependencyResolver + @DR = Gem::Resolver end def test_gem @@ -69,6 +69,7 @@ class TestGemRequestSet < Gem::TestCase assert_equal [dep('a')], rs.dependencies + assert rs.git_set assert rs.vendor_set end @@ -100,6 +101,32 @@ class TestGemRequestSet < Gem::TestCase assert_equal ["a-2", "b-2"], names end + def test_resolve_git + name, _, repository, = git_gem + + rs = Gem::RequestSet.new + + Tempfile.open 'gem.deps.rb' do |io| + io.puts <<-gems_deps_rb + gem "#{name}", :git => "#{repository}" + gems_deps_rb + + io.flush + + rs.load_gemdeps io.path + end + + res = rs.resolve + assert_equal 1, res.size + + names = res.map { |s| s.full_name }.sort + + assert_equal %w[a-1], names + + assert_equal [@DR::IndexSet, @DR::GitSet, @DR::VendorSet], + rs.sets.map { |set| set.class } + end + def test_resolve_incompatible a1 = util_spec 'a', 1 a2 = util_spec 'a', 2 @@ -142,7 +169,7 @@ class TestGemRequestSet < Gem::TestCase assert_equal ["a-1", "b-2"], names - assert_equal [@DR::IndexSet, @DR::VendorSet], + assert_equal [@DR::IndexSet, @DR::GitSet, @DR::VendorSet], rs.sets.map { |set| set.class } end |