Add Version#detected_from_url?
This commit is contained in:
parent
329f0a8490
commit
e57122780e
@ -217,8 +217,8 @@ class FormulaAuditor
|
||||
if s.version.to_s.empty?
|
||||
problem "Invalid or missing #{spec} version"
|
||||
else
|
||||
version_text = s.version if s.explicit_version?
|
||||
version_url = Pathname.new(s.url).version
|
||||
version_text = s.version unless s.version.detected_from_url?
|
||||
version_url = Version.parse(s.url)
|
||||
if version_url == version_text
|
||||
problem "#{spec} version #{version_text} is redundant with version scanned from URL"
|
||||
end
|
||||
|
@ -11,11 +11,6 @@ class SoftwareSpec
|
||||
@mirrors = []
|
||||
end
|
||||
|
||||
# Was the version defined in the DSL, or detected from the URL?
|
||||
def explicit_version?
|
||||
@explicit_version || false
|
||||
end
|
||||
|
||||
def download_strategy
|
||||
@download_strategy ||= DownloadStrategyDetector.new(@url, @using).detect
|
||||
end
|
||||
@ -63,7 +58,6 @@ class SoftwareSpec
|
||||
@version ||= Version.parse(@url)
|
||||
else
|
||||
@version = Version.new(val)
|
||||
@explicit_version = true
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -122,9 +122,9 @@ class FormulaTests < Test::Unit::TestCase
|
||||
assert_equal 1, f.devel.mirrors.length
|
||||
assert f.head.mirrors.empty?
|
||||
|
||||
assert !f.stable.explicit_version?
|
||||
assert !f.bottle.explicit_version?
|
||||
assert !f.devel.explicit_version?
|
||||
assert f.stable.version.detected_from_url?
|
||||
assert f.bottle.version.detected_from_url?
|
||||
assert f.devel.version.detected_from_url?
|
||||
assert_version_equal '0.1', f.stable.version
|
||||
assert_version_equal '0.1', f.bottle.version
|
||||
assert_version_equal '0.2', f.devel.version
|
||||
@ -159,8 +159,8 @@ class FormulaTests < Test::Unit::TestCase
|
||||
assert_version_equal '0.3', f.version
|
||||
assert_version_equal '0.3', f.stable.version
|
||||
assert_version_equal '0.4', f.devel.version
|
||||
assert f.stable.explicit_version?
|
||||
assert f.devel.explicit_version?
|
||||
assert !f.stable.version.detected_from_url?
|
||||
assert !f.devel.version.detected_from_url?
|
||||
end
|
||||
|
||||
def test_old_bottle_specs
|
||||
@ -182,7 +182,7 @@ class FormulaTests < Test::Unit::TestCase
|
||||
assert_nil f.bottle.md5
|
||||
assert_nil f.bottle.sha256
|
||||
|
||||
assert !f.bottle.explicit_version?
|
||||
assert f.bottle.version.detected_from_url?
|
||||
assert_equal 0, f.bottle.revision
|
||||
assert_version_equal '0.1', f.bottle.version
|
||||
else
|
||||
|
@ -1,9 +1,14 @@
|
||||
class Version
|
||||
include Comparable
|
||||
|
||||
def initialize val
|
||||
def initialize val, detected=false
|
||||
return val if val.is_a? Version or val.nil?
|
||||
@version = val.to_s
|
||||
@detected_from_url = detected
|
||||
end
|
||||
|
||||
def detected_from_url?
|
||||
@detected_from_url
|
||||
end
|
||||
|
||||
def head?
|
||||
@ -39,7 +44,7 @@ class Version
|
||||
|
||||
def self.parse spec
|
||||
version = _parse(spec)
|
||||
Version.new(version) unless version.nil?
|
||||
Version.new(version, true) unless version.nil?
|
||||
end
|
||||
|
||||
private
|
||||
|
Loading…
x
Reference in New Issue
Block a user