aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_dependency_resolver_index_set.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/test_gem_dependency_resolver_index_set.rb')
-rw-r--r--test/rubygems/test_gem_dependency_resolver_index_set.rb53
1 files changed, 53 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_dependency_resolver_index_set.rb b/test/rubygems/test_gem_dependency_resolver_index_set.rb
new file mode 100644
index 0000000000..82ea486792
--- /dev/null
+++ b/test/rubygems/test_gem_dependency_resolver_index_set.rb
@@ -0,0 +1,53 @@
+require 'rubygems/test_case'
+require 'rubygems/dependency_resolver'
+
+class TestGemDependencyResolverIndexSet < Gem::TestCase
+
+ def test_load_spec
+ @fetcher = Gem::FakeFetcher.new
+ Gem::RemoteFetcher.fetcher = @fetcher
+
+ a_2 = quick_spec 'a', 2
+ a_2_p = quick_spec 'a', 2 do |s| s.platform = Gem::Platform.local end
+
+ Gem::Specification.add_specs a_2, a_2_p
+
+ util_setup_spec_fetcher a_2, a_2_p
+
+ source = Gem::Source.new @gem_repo
+ version = v 2
+
+ set = Gem::DependencyResolver::IndexSet.new
+
+ spec = set.load_spec 'a', version, Gem::Platform.local, source
+
+ assert_equal a_2_p.full_name, spec.full_name
+ end
+
+ def test_load_spec_cached
+ @fetcher = Gem::FakeFetcher.new
+ Gem::RemoteFetcher.fetcher = @fetcher
+
+ a_2 = quick_spec 'a', 2
+ a_2_p = quick_spec 'a', 2 do |s| s.platform = Gem::Platform.local end
+
+ Gem::Specification.add_specs a_2, a_2_p
+
+ util_setup_spec_fetcher a_2, a_2_p
+
+ source = Gem::Source.new @gem_repo
+ version = v 2
+
+ set = Gem::DependencyResolver::IndexSet.new
+
+ first = set.load_spec 'a', version, Gem::Platform.local, source
+
+ util_setup_spec_fetcher # clear
+
+ second = set.load_spec 'a', version, Gem::Platform.local, source
+
+ assert_same first, second
+ end
+
+end
+