Merge pull request #8670 from mistydemeo/fix_multiple_version_messaging
Fix printing MultipleVersionsInstalledError details
This commit is contained in:
		
						commit
						6474e651a2
					
				@ -164,7 +164,10 @@ module Homebrew
 | 
			
		||||
            end
 | 
			
		||||
 | 
			
		||||
            unless (prefix = f.latest_installed_prefix).directory?
 | 
			
		||||
              raise MultipleVersionsInstalledError, "#{rack.basename} has multiple installed versions"
 | 
			
		||||
              raise MultipleVersionsInstalledError, <<~EOS
 | 
			
		||||
                #{rack.basename} has multiple installed versions
 | 
			
		||||
                Run `brew uninstall --force #{rack.basename}` to remove all versions.
 | 
			
		||||
              EOS
 | 
			
		||||
            end
 | 
			
		||||
 | 
			
		||||
            Keg.new(prefix)
 | 
			
		||||
 | 
			
		||||
@ -134,7 +134,6 @@ module Homebrew
 | 
			
		||||
    )
 | 
			
		||||
  rescue MultipleVersionsInstalledError => e
 | 
			
		||||
    ofail e
 | 
			
		||||
    puts "Run `brew uninstall --force #{e.name}` to remove all versions."
 | 
			
		||||
  ensure
 | 
			
		||||
    # If we delete Cellar/newname, then Cellar/oldname symlink
 | 
			
		||||
    # can become broken and we have to remove it.
 | 
			
		||||
 | 
			
		||||
@ -3,9 +3,19 @@
 | 
			
		||||
require "exceptions"
 | 
			
		||||
 | 
			
		||||
describe MultipleVersionsInstalledError do
 | 
			
		||||
  subject { described_class.new("foo has multiple installed versions") }
 | 
			
		||||
  subject {
 | 
			
		||||
    described_class.new <<~EOS
 | 
			
		||||
      foo has multiple installed versions
 | 
			
		||||
      Run `brew uninstall --force foo` to remove all versions.
 | 
			
		||||
    EOS
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  its(:to_s) { is_expected.to eq("foo has multiple installed versions") }
 | 
			
		||||
  its(:to_s) {
 | 
			
		||||
    is_expected.to eq <<~EOS
 | 
			
		||||
      foo has multiple installed versions
 | 
			
		||||
      Run `brew uninstall --force foo` to remove all versions.
 | 
			
		||||
    EOS
 | 
			
		||||
  }
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
describe NoSuchKegError do
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user