Add HeadVersion tests

This commit is contained in:
Vlad Shablinsky 2016-06-22 10:13:07 +03:00 committed by Xu Cheng
parent 2e916110e4
commit 00cdd5f481
No known key found for this signature in database
GPG Key ID: C2A3860FA0B459CE
2 changed files with 46 additions and 1 deletions

View File

@ -55,7 +55,11 @@ class VersionComparisonTests < Homebrew::TestCase
def test_HEAD def test_HEAD
assert_operator version("HEAD"), :>, version("1.2.3") assert_operator version("HEAD"), :>, version("1.2.3")
assert_operator version("HEAD-abcdef"), :>, version("1.2.3")
assert_operator version("1.2.3"), :<, version("HEAD") assert_operator version("1.2.3"), :<, version("HEAD")
assert_operator version("1.2.3"), :<, version("HEAD-fedcba")
assert_operator version("HEAD-abcdef"), :==, version("HEAD-fedcba")
assert_operator version("HEAD"), :==, version("HEAD-fedcba")
end end
def test_comparing_alpha_versions def test_comparing_alpha_versions
@ -156,6 +160,12 @@ class VersionParsingTests < Homebrew::TestCase
assert_version_nil "foo" assert_version_nil "foo"
end end
def test_create
v = Version.create("1.20")
refute_predicate v, :head?
assert_equal "1.20", v.to_str
end
def test_version_all_dots def test_version_all_dots
assert_version_detected "1.14", "http://example.com/foo.bar.la.1.14.zip" assert_version_detected "1.14", "http://example.com/foo.bar.la.1.14.zip"
end end
@ -441,3 +451,38 @@ class VersionParsingTests < Homebrew::TestCase
"http://github.com/foo/bar.git", {:tag => "v1.2.3"} "http://github.com/foo/bar.git", {:tag => "v1.2.3"}
end end
end end
class HeadVersionTests < Homebrew::TestCase
def test_create_head
v1 = Version.create("HEAD-abcdef")
v2 = Version.create("HEAD")
assert_predicate v1, :head?
assert_predicate v2, :head?
end
def test_commit_assigned
v = HeadVersion.new("HEAD-abcdef")
assert_equal "abcdef", v.commit
assert_equal "HEAD-abcdef", v.to_str
end
def test_no_commit
v = HeadVersion.new("HEAD")
assert_nil v.commit
assert_equal "HEAD", v.to_str
end
def test_update_commit
v1 = HeadVersion.new("HEAD-abcdef")
v2 = HeadVersion.new("HEAD")
v1.update_commit("ffffff")
assert_equal "ffffff", v1.commit
assert_equal "HEAD-ffffff", v1.to_str
v2.update_commit("ffffff")
assert_equal "ffffff", v2.commit
assert_equal "HEAD-ffffff", v2.to_str
end
end

View File

@ -23,7 +23,7 @@ end
module Homebrew module Homebrew
module VersionAssertions module VersionAssertions
def version(v) def version(v)
Version.new(v) Version.create(v)
end end
def assert_version_equal(expected, actual) def assert_version_equal(expected, actual)