From 55e0f40d020062a03a56a50cc67c65c3dfea78c0 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Mon, 20 Oct 2014 17:07:54 -0500 Subject: Handle broken symlinks in resolve_any_conflicts Fixes Homebrew/homebrew#33328. --- Library/Homebrew/test/test_keg.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'Library/Homebrew/test') diff --git a/Library/Homebrew/test/test_keg.rb b/Library/Homebrew/test/test_keg.rb index 9f4cc11fb..0fb419f0d 100644 --- a/Library/Homebrew/test/test_keg.rb +++ b/Library/Homebrew/test/test_keg.rb @@ -239,4 +239,20 @@ class LinkTests < Homebrew::TestCase a.uninstall b.uninstall end + + def test_removes_broken_symlinks_that_conflict_with_directories + a = HOMEBREW_CELLAR.join("a", "1.0") + a.join("lib", "foo").mkpath + + keg = Keg.new(a) + + link = HOMEBREW_PREFIX.join("lib", "foo") + link.parent.mkpath + link.make_symlink(@nonexistent) + + keg.link + ensure + keg.unlink + keg.uninstall + end end -- cgit v1.2.3