diff options
| author | Jack Nagel | 2013-12-21 23:28:03 -0600 |
|---|---|---|
| committer | Jack Nagel | 2013-12-21 23:28:03 -0600 |
| commit | b57e6006a6c5948a94d761c6cc13423672f43389 (patch) | |
| tree | 90efeee5263bada2de0d4a6b737f05d4bfdc4586 /Library | |
| parent | 554490f9e056073adb10683ef34cedb486dfabb6 (diff) | |
| download | brew-b57e6006a6c5948a94d761c6cc13423672f43389.tar.bz2 | |
cleaner: add tests to demonstrate some current failures
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/test/test_cleaner.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Library/Homebrew/test/test_cleaner.rb b/Library/Homebrew/test/test_cleaner.rb index a4989d920..42eb66403 100644 --- a/Library/Homebrew/test/test_cleaner.rb +++ b/Library/Homebrew/test/test_cleaner.rb @@ -27,4 +27,23 @@ class CleanerTests < Test::Unit::TestCase assert_equal 0100444, (@f.lib/'x86_64.dylib').stat.mode assert_equal 0100444, (@f.lib/'i386.dylib').stat.mode end + + def test_fails_to_remove_symlink_when_target_was_pruned_first + mkpath @f.prefix/'b' + ln_s 'b', @f.prefix/'a' + assert_raises(Errno::ENOENT) { Cleaner.new @f } + end + + def test_fails_to_remove_symlink_pointing_to_empty_directory + mkpath @f.prefix/'b' + ln_s 'b', @f.prefix/'c' + assert_raises(Errno::ENOTDIR) { Cleaner.new @f } + end + + def test_fails_to_remove_broken_symlink + ln_s 'target', @f.prefix/'symlink' + Cleaner.new @f + assert @f.prefix.join('symlink').symlink?, "not a symlink" + assert !@f.prefix.join('symlink').exist?, "target exists" + end end |
