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?
|
||||
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