diff options
Diffstat (limited to 'test/rubygems/test_gem_dependency_resolver_vendor_specification.rb')
-rw-r--r-- | test/rubygems/test_gem_dependency_resolver_vendor_specification.rb | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_dependency_resolver_vendor_specification.rb b/test/rubygems/test_gem_dependency_resolver_vendor_specification.rb new file mode 100644 index 0000000000..7617243234 --- /dev/null +++ b/test/rubygems/test_gem_dependency_resolver_vendor_specification.rb @@ -0,0 +1,87 @@ +require 'rubygems/test_case' +require 'rubygems/dependency_resolver' + +class TestGemDependencyResolverVendorSpecification < Gem::TestCase + + def setup + super + + @set = Gem::DependencyResolver::VendorSet.new + @spec = Gem::Specification.new 'a', 1 + end + + def test_initialize + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal 'a', v_spec.name + assert_equal v(1), v_spec.version + assert_equal Gem::Platform::RUBY, v_spec.platform + assert_equal Gem::Source::Vendor.new, v_spec.source + end + + def test_equals2 + v_spec_a = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal v_spec_a, v_spec_a + + spec_b = Gem::Specification.new 'b', 1 + v_spec_b = Gem::DependencyResolver::VendorSpecification.new @set, spec_b + + refute_equal v_spec_a, v_spec_b + + v_set = Gem::DependencyResolver::VendorSet.new + v_spec_s = Gem::DependencyResolver::VendorSpecification.new v_set, @spec + + refute_equal v_spec_a, v_spec_s + + i_set = Gem::DependencyResolver::IndexSet.new + source = Gem::Source.new @gem_repo + i_spec = Gem::DependencyResolver::IndexSpecification.new( + i_set, 'a', v(1), source, Gem::Platform::RUBY) + + refute_equal v_spec_a, i_spec + end + + def test_dependencies + @spec.add_dependency 'b' + @spec.add_dependency 'c' + + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal [dep('b'), dep('c')], v_spec.dependencies + end + + def test_full_name + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal 'a-1', v_spec.full_name + end + + def test_name + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal 'a', v_spec.name + end + + def test_platform + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal Gem::Platform::RUBY, v_spec.platform + end + + def test_source + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, @spec + + assert_equal Gem::Source::Vendor.new, v_spec.source + end + + def test_version + spec = Gem::Specification.new 'a', 1 + + v_spec = Gem::DependencyResolver::VendorSpecification.new @set, spec + + assert_equal v(1), spec.version + end + +end + |