test_formula: add outdated_versions tests
This commit is contained in:
parent
cb3ad215b4
commit
d47df68cbd
@ -406,3 +406,101 @@ class FormulaTests < Homebrew::TestCase
|
|||||||
assert f_true.pour_bottle?
|
assert f_true.pour_bottle?
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
class OutdatedVersionsTests < Homebrew::TestCase
|
||||||
|
attr_reader :outdated_prefix, :same_prefix, :greater_prefix, :head_prefix
|
||||||
|
attr_reader :f
|
||||||
|
|
||||||
|
def setup
|
||||||
|
@f = formula { url "foo"; version "1.20" }
|
||||||
|
@outdated_prefix = HOMEBREW_CELLAR/"#{f.name}/1.11"
|
||||||
|
@same_prefix = HOMEBREW_CELLAR/"#{f.name}/1.20"
|
||||||
|
@greater_prefix = HOMEBREW_CELLAR/"#{f.name}/1.21"
|
||||||
|
@head_prefix = HOMEBREW_CELLAR/"#{f.name}/HEAD"
|
||||||
|
end
|
||||||
|
|
||||||
|
def teardown
|
||||||
|
@f.rack.rmtree
|
||||||
|
end
|
||||||
|
|
||||||
|
def setup_tab_for_prefix(prefix, tap_string=nil)
|
||||||
|
prefix.mkpath
|
||||||
|
tab = Tab.empty
|
||||||
|
tab.tabfile = prefix.join("INSTALL_RECEIPT.json")
|
||||||
|
tab.source["tap"] = tap_string if tap_string
|
||||||
|
tab.write
|
||||||
|
tab
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_greater_different_tap_installed
|
||||||
|
setup_tab_for_prefix(greater_prefix, "user/repo")
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_greater_same_tap_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(greater_prefix, "homebrew/core")
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_outdated_different_tap_installed
|
||||||
|
setup_tab_for_prefix(outdated_prefix, "user/repo")
|
||||||
|
refute_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_outdated_same_tap_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(outdated_prefix, "homebrew/core")
|
||||||
|
refute_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_same_head_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(head_prefix, "homebrew/core")
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_different_head_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(head_prefix, "user/repo")
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_mixed_taps_greater_version_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(outdated_prefix, "homebrew/core")
|
||||||
|
setup_tab_for_prefix(greater_prefix, "user/repo")
|
||||||
|
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
|
||||||
|
setup_tab_for_prefix(greater_prefix, "homebrew/core")
|
||||||
|
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_mixed_taps_outdated_version_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
|
||||||
|
extra_outdated_prefix = HOMEBREW_CELLAR/"#{f.name}/1.0"
|
||||||
|
|
||||||
|
setup_tab_for_prefix(outdated_prefix)
|
||||||
|
setup_tab_for_prefix(extra_outdated_prefix, "homebrew/core")
|
||||||
|
|
||||||
|
refute_predicate f.outdated_versions, :empty?
|
||||||
|
|
||||||
|
setup_tab_for_prefix(outdated_prefix, "user/repo")
|
||||||
|
|
||||||
|
refute_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_same_version_tap_installed
|
||||||
|
f.instance_variable_set(:@tap, CoreTap.instance)
|
||||||
|
setup_tab_for_prefix(same_prefix, "homebrew/core")
|
||||||
|
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
|
||||||
|
setup_tab_for_prefix(same_prefix, "user/repo")
|
||||||
|
|
||||||
|
assert_predicate f.outdated_versions, :empty?
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user