29 lines
		
	
	
		
			986 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			986 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| describe "brew prune", :integration_test do
 | |
|   it "removes empty directories and broken symlinks" do
 | |
|     share = (HOMEBREW_PREFIX/"share")
 | |
| 
 | |
|     (share/"pruneable/directory/here").mkpath
 | |
|     (share/"notpruneable/file").write "I'm here"
 | |
|     FileUtils.ln_s "/i/dont/exist/no/really/i/dont", share/"pruneable_symlink"
 | |
| 
 | |
|     expect { brew "prune", "--dry-run" }
 | |
|       .to output(%r{Would remove \(empty directory\): .*/pruneable/directory/here}).to_stdout
 | |
|       .and not_to_output.to_stderr
 | |
|       .and be_a_success
 | |
| 
 | |
|     expect { brew "prune" }
 | |
|       .to output(/Pruned 1 symbolic links and 3 directories/).to_stdout
 | |
|       .and not_to_output.to_stderr
 | |
|       .and be_a_success
 | |
| 
 | |
|     expect(share/"pruneable").not_to be_a_directory
 | |
|     expect(share/"notpruneable").to be_a_directory
 | |
|     expect(share/"pruneable_symlink").not_to be_a_symlink
 | |
| 
 | |
|     expect { brew "prune", "--verbose" }
 | |
|       .to output(/Nothing pruned/).to_stdout
 | |
|       .and not_to_output.to_stderr
 | |
|       .and be_a_success
 | |
|   end
 | |
| end
 | 
