aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_dependency.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-06-09 21:38:59 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-06-09 21:38:59 +0000
commit31c94ffeb5f09d09ac2c86fc9e6614e38251a43d (patch)
tree10e44506238c7af3d7c9d822111996731726e38d /test/rubygems/test_gem_dependency.rb
parenta6afbaeb3be396c0fdea3b9077d9256c59edcfca (diff)
downloadruby-31c94ffeb5f09d09ac2c86fc9e6614e38251a43d.tar.gz
Update to RubyGems 1.3.4 r2223
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems/test_gem_dependency.rb')
-rw-r--r--test/rubygems/test_gem_dependency.rb73
1 files changed, 62 insertions, 11 deletions
diff --git a/test/rubygems/test_gem_dependency.rb b/test/rubygems/test_gem_dependency.rb
index 5b409fa1a8..7b8c7bb45d 100644
--- a/test/rubygems/test_gem_dependency.rb
+++ b/test/rubygems/test_gem_dependency.rb
@@ -20,6 +20,10 @@ class TestGemDependency < RubyGemTestCase
@r1_0 = Gem::Requirement.new ['> 1.0']
end
+ def dep(name, version)
+ Gem::Dependency.new name, version
+ end
+
def test_initialize
assert_equal "pkg", @pkg1_0.name
assert_equal @r1_0, @pkg1_0.version_requirements
@@ -96,10 +100,6 @@ class TestGemDependency < RubyGemTestCase
end
def test_equals_tilde
- def dep(name, version)
- Gem::Dependency.new name, version
- end
-
a0 = dep 'a', '0'
a1 = dep 'a', '1'
b0 = dep 'b', '0'
@@ -108,14 +108,64 @@ class TestGemDependency < RubyGemTestCase
pa0r = dep(/a/, '>= 0')
pab0r = dep(/a|b/, '>= 0')
- assert((a0 =~ a0), 'match self')
- assert((pa0 =~ a0), 'match version exact')
- assert((pa0 =~ a1), 'match version')
- assert((pa0r =~ a0), 'match regex simple')
- assert((pab0r =~ a0), 'match regex complex')
+ assert_match a0, a0, 'match self'
+ assert_match pa0, a0, 'match version exact'
+ assert_match pa0, a1, 'match version'
+ assert_match pa0r, a0, 'match regex simple'
+ assert_match pab0r, a0, 'match regex complex'
+
+ refute_match pa0r, b0, 'fail match regex'
+ refute_match pa0r, Object.new, 'fail match Object'
+ end
+
+ def test_equals_tilde_escape
+ a1 = Gem::Dependency.new 'a', '1'
+
+ pab1 = Gem::Dependency.new 'a|b', '>= 1'
+ pab1r = Gem::Dependency.new(/a|b/, '>= 1')
+
+ refute_match pab1, a1, 'escaped'
+ assert_match pab1r, a1, 'exact regexp'
+ end
+
+ def test_equals_tilde_object
+ a0 = Object.new
+
+ def a0.name() 'a' end
+ def a0.version() '0' end
+
+ pa0 = Gem::Dependency.new 'a', '>= 0'
+
+ assert_match pa0, a0, 'match version exact'
+ end
+
+ def test_equals_tilde_spec
+ def spec(name, version)
+ Gem::Specification.new do |spec|
+ spec.name = name
+ spec.version = version
+ end
+ end
+
+ a0 = spec 'a', '0'
+ a1 = spec 'a', '1'
+ b0 = spec 'b', '0'
+
+ pa0 = dep 'a', '>= 0'
+ pa0r = dep(/a/, '>= 0')
+ pab0r = dep(/a|b/, '>= 0')
+
+ assert_match pa0, a0, 'match version exact'
+ assert_match pa0, a1, 'match version'
- assert(!(pa0r =~ b0), 'fail match regex')
- assert(!(pa0r =~ Object.new), 'fail match Object')
+ assert_match pa0r, a0, 'match regex simple'
+ assert_match pa0r, a1, 'match regex simple'
+
+ assert_match pab0r, a0, 'match regex complex'
+ assert_match pab0r, b0, 'match regex complex'
+
+ refute_match pa0r, b0, 'fail match regex'
+ refute_match pa0r, Object.new, 'fail match Object'
end
def test_hash
@@ -135,5 +185,6 @@ class TestGemDependency < RubyGemTestCase
refute_equal(runtime.hash, development.hash)
end
+
end