aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cask/spec
diff options
context:
space:
mode:
authorMarkus Reiter2017-02-16 21:18:35 +0100
committerGitHub2017-02-16 21:18:35 +0100
commit93ef5092b0312117717c8dd31012fd70f093891f (patch)
tree568c4b42b53571d197f1516c1d1fff08fd1080a9 /Library/Homebrew/cask/spec
parent5a2a0638028ee49991e404c1bd6397c10659474b (diff)
parentecb17f4f1d265e1625828565ecbbdac6d5f989c6 (diff)
downloadbrew-93ef5092b0312117717c8dd31012fd70f093891f.tar.bz2
Merge pull request #2033 from reitermarkus/uninstall-first
Make sure `uninstall` is called before artifacts are removed.
Diffstat (limited to 'Library/Homebrew/cask/spec')
-rw-r--r--Library/Homebrew/cask/spec/cask/cli/uninstall_spec.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/Library/Homebrew/cask/spec/cask/cli/uninstall_spec.rb b/Library/Homebrew/cask/spec/cask/cli/uninstall_spec.rb
index be0aa31b6..243be49d9 100644
--- a/Library/Homebrew/cask/spec/cask/cli/uninstall_spec.rb
+++ b/Library/Homebrew/cask/spec/cask/cli/uninstall_spec.rb
@@ -41,6 +41,25 @@ describe Hbc::CLI::Uninstall do
expect(Hbc.appdir.join("Caffeine.app")).not_to exist
end
+ it "calls `uninstall` before removing artifacts" do
+ cask = Hbc::CaskLoader.load_from_file(TEST_FIXTURE_DIR/"cask/Casks/with-uninstall-script-app.rb")
+
+ shutup do
+ Hbc::Installer.new(cask).install
+ end
+
+ expect(cask).to be_installed
+
+ expect {
+ shutup do
+ Hbc::CLI::Uninstall.run("with-uninstall-script-app")
+ end
+ }.not_to raise_error
+
+ expect(cask).not_to be_installed
+ expect(Hbc.appdir.join("MyFancyApp.app")).not_to exist
+ end
+
describe "when multiple versions of a cask are installed" do
let(:token) { "versioned-cask" }
let(:first_installed_version) { "1.2.3" }