remove empty app dirs from caskroom on uninstall

previously an install + uninstall would leave around an empty dir with
the app's name. now we clean that up.

refs #1461
This commit is contained in:
phinze 2013-11-10 14:48:16 -06:00
parent 8ab01bc255
commit 1ba71a3554
3 changed files with 12 additions and 7 deletions

View File

@ -110,8 +110,12 @@ class Cask
@title = title
end
def caskroom_path
self.class.caskroom.join(self.title)
end
def destination_path
self.class.caskroom.join(self.title).join(self.version)
caskroom_path.join(self.version)
end
def installed?

View File

@ -66,6 +66,9 @@ class Cask::Installer
end
def purge_files
@cask.destination_path.rmtree if @cask.destination_path.exist?
if @cask.destination_path.exist?
@cask.destination_path.rmtree
end
@cask.caskroom_path.rmdir_if_possible
end
end

View File

@ -139,11 +139,9 @@ describe Cask::Installer do
installer.uninstall
end
dest_path = Cask.caskroom/'local-caffeine'/caffeine.version
application = dest_path/'Caffeine.app'
application.wont_be :directory?
dest_path.wont_be :directory?
(Cask.caskroom/'local-caffeine'/caffeine.version/'Caffeine.app').wont_be :directory?
(Cask.caskroom/'local-caffeine'/caffeine.version).wont_be :directory?
(Cask.caskroom/'local-caffeine').wont_be :directory?
end
end
end