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