From 1df42597d15416357a20bd68700ce1a2d245e8bb Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 7 Mar 2011 08:44:45 +0000 Subject: cancel subversion backfire. sorry git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/rubygems/test_gem_dependency.rb | 39 ++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'test/rubygems/test_gem_dependency.rb') diff --git a/test/rubygems/test_gem_dependency.rb b/test/rubygems/test_gem_dependency.rb index 51b746f555..b4a21b896c 100644 --- a/test/rubygems/test_gem_dependency.rb +++ b/test/rubygems/test_gem_dependency.rb @@ -106,6 +106,45 @@ class TestGemDependency < Gem::TestCase refute_equal dep("pkg", :development), dep("pkg", :runtime), "type" end + def test_merge + a1 = dep 'a', '~> 1.0' + a2 = dep 'a', '= 1.0' + + a3 = a1.merge a2 + + assert_equal dep('a', '~> 1.0', '= 1.0'), a3 + end + + def test_merge_default + a1 = dep 'a' + a2 = dep 'a', '1' + + a3 = a1.merge a2 + + assert_equal dep('a', '1'), a3 + end + + def test_merge_name_mismatch + a = dep 'a' + b = dep 'b' + + e = assert_raises ArgumentError do + a.merge b + end + + assert_equal 'a (>= 0) and b (>= 0) have different names', + e.message + end + + def test_merge_other_default + a1 = dep 'a', '1' + a2 = dep 'a' + + a3 = a1.merge a2 + + assert_equal dep('a', '1'), a3 + end + def test_prerelease_eh d = dep "pkg", "= 1" -- cgit v1.2.3