diff options
| author | Mike McQuaid | 2016-12-31 18:39:55 +0000 |
|---|---|---|
| committer | GitHub | 2016-12-31 18:39:55 +0000 |
| commit | ad593cf42cfcd4bb795b457d6787cf89382017d8 (patch) | |
| tree | 3341c3dea5617faae1e31131baea517a0f1e7d34 /Library/Homebrew/test | |
| parent | 4b5489e1721c6cb3fd3b9a7aeb988eb3b381ec41 (diff) | |
| parent | 524d9ce8f3b8553a62da7223a012b4e332bd02b3 (diff) | |
| download | brew-ad593cf42cfcd4bb795b457d6787cf89382017d8.tar.bz2 | |
Merge pull request #1757 from alyssais/moved_formula
keg: handle dependencies of moved/renamed formulae
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/keg_test.rb | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/Library/Homebrew/test/keg_test.rb b/Library/Homebrew/test/keg_test.rb index 45d63aa95..660ccd882 100644 --- a/Library/Homebrew/test/keg_test.rb +++ b/Library/Homebrew/test/keg_test.rb @@ -373,9 +373,15 @@ class InstalledDependantsTests < LinkTestCase t.source["tap"] = "some/tap" t.source["path"] = nil end + dependencies [{ "full_name" => "some/tap/foo", "version" => "1.0" }] assert_equal [@dependent], @keg.installed_dependents assert_equal [[@keg], ["bar 1.0"]], Keg.find_some_installed_dependents([@keg]) + + dependencies nil + # It doesn't make sense for a keg with no formula to have any dependents, + # so that can't really be tested. + assert_nil Keg.find_some_installed_dependents([@keg]) end def test_a_dependency_with_no_tap_in_tab @@ -388,7 +394,7 @@ class InstalledDependantsTests < LinkTestCase Formula["bar"].class.depends_on "baz" result = Keg.find_some_installed_dependents([@keg, @tap_dep]) - assert_equal [[@tap_dep], ["bar"]], result + assert_equal [[@keg, @tap_dep], ["bar"]], result end def test_no_dependencies_anywhere @@ -411,6 +417,23 @@ class InstalledDependantsTests < LinkTestCase assert_nil Keg.find_some_installed_dependents([@keg, @dependent]) end + def test_renamed_dependency + dependencies nil + + stub_formula_loader Formula["foo"], "homebrew/core/foo-old" + renamed_path = HOMEBREW_CELLAR/"foo-old" + (HOMEBREW_CELLAR/"foo").rename(renamed_path) + renamed_keg = Keg.new(renamed_path.join("1.0")) + + Formula["bar"].class.depends_on "foo" + + result = Keg.find_some_installed_dependents([renamed_keg]) + assert_equal [[renamed_keg], ["bar"]], result + ensure + # Move it back to where it was so it'll be cleaned up. + (HOMEBREW_CELLAR/"foo-old").rename(HOMEBREW_CELLAR/"foo") + end + def test_empty_dependencies_in_tab dependencies [] assert_empty @keg.installed_dependents |
