From fc2d403a825b187f9979e7808344aab7ed533900 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Tue, 1 Jul 2014 21:26:41 -0500 Subject: [PATCH] X11Dependency: use Version objects --- .../Homebrew/requirements/x11_dependency.rb | 21 +++++++------------ .../test/test_dependency_collector.rb | 4 ++-- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/Library/Homebrew/requirements/x11_dependency.rb b/Library/Homebrew/requirements/x11_dependency.rb index c493d4521e..7adc2a7cb1 100644 --- a/Library/Homebrew/requirements/x11_dependency.rb +++ b/Library/Homebrew/requirements/x11_dependency.rb @@ -11,12 +11,16 @@ class X11Dependency < Requirement def initialize(name="x11", tags=[]) @name = name - @min_version = tags.shift if /(\d\.)+\d/ === tags.first + if /(\d\.)+\d/ === tags.first + @min_version = Version.new(tags.shift) + else + @min_version = Version.new("0.0.0") + end super(tags) end satisfy :build_env => false do - MacOS::XQuartz.installed? && (@min_version.nil? || @min_version <= MacOS::XQuartz.version) + MacOS::XQuartz.installed? && min_version <= Version.new(MacOS::Quartz.version) end def message; <<-EOS.undent @@ -27,16 +31,7 @@ class X11Dependency < Requirement end def <=> other - return nil unless X11Dependency === other - - if min_version.nil? && other.min_version.nil? - 0 - elsif other.min_version.nil? - 1 - elsif min_version.nil? - -1 - else - min_version <=> other.min_version - end + return unless X11Dependency === other + min_version <=> other.min_version end end diff --git a/Library/Homebrew/test/test_dependency_collector.rb b/Library/Homebrew/test/test_dependency_collector.rb index 109dcadf80..dafc779741 100644 --- a/Library/Homebrew/test/test_dependency_collector.rb +++ b/Library/Homebrew/test/test_dependency_collector.rb @@ -69,7 +69,7 @@ class DependencyCollectorTests < Homebrew::TestCase def test_x11_min_version @d.add :x11 => '2.5.1' - assert_equal "2.5.1", find_requirement(X11Dependency).min_version + assert_equal "2.5.1", find_requirement(X11Dependency).min_version.to_s end def test_x11_tag @@ -80,7 +80,7 @@ class DependencyCollectorTests < Homebrew::TestCase def test_x11_min_version_and_tag @d.add :x11 => ['2.5.1', :optional] dep = find_requirement(X11Dependency) - assert_equal '2.5.1', dep.min_version + assert_equal '2.5.1', dep.min_version.to_s assert_predicate dep, :optional? end