Skip to content

Instantly share code, notes, and snippets.

@luislavena
Created April 9, 2009 21:57
Show Gist options
  • Save luislavena/92769 to your computer and use it in GitHub Desktop.
Save luislavena/92769 to your computer and use it in GitHub Desktop.
require 'rubygems'
v1 = Gem::Version.new('1.8.4')
v2 = Gem::Version.new('1.8.6')
v3 = Gem::Version.new('1.8.7')
v4 = Gem::Version.new('1.9.1')
d0 = Gem::Requirement.new('~> 1.8.0')
d1 = Gem::Requirement.new('~> 1.8.6')
d2 = Gem::Requirement.new('~> 1.8.7')
d3 = Gem::Requirement.new('~> 1.9.1')
[d0, d1, d2, d3].each do |req|
[v1, v2, v3, v4].each do |ver|
puts "#{ver} satisfy #{req}? #=> #{req.satisfied_by?(ver)}"
end
end
Luis@KEORE (D:\Users\Luis\Desktop)
$ ruby t.rb
1.8.4 satisfy ~> 1.8.0? #=> true
1.8.6 satisfy ~> 1.8.0? #=> true
1.8.7 satisfy ~> 1.8.0? #=> true
1.9.1 satisfy ~> 1.8.0? #=> false
1.8.4 satisfy ~> 1.8.6? #=> false
1.8.6 satisfy ~> 1.8.6? #=> true
1.8.7 satisfy ~> 1.8.6? #=> true
1.9.1 satisfy ~> 1.8.6? #=> false
1.8.4 satisfy ~> 1.8.7? #=> false
1.8.6 satisfy ~> 1.8.7? #=> false
1.8.7 satisfy ~> 1.8.7? #=> true
1.9.1 satisfy ~> 1.8.7? #=> false
1.8.4 satisfy ~> 1.9.1? #=> false
1.8.6 satisfy ~> 1.9.1? #=> false
1.8.7 satisfy ~> 1.9.1? #=> false
1.9.1 satisfy ~> 1.9.1? #=> true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment