diff options
| author | Markus Reiter | 2017-06-24 08:34:01 +0200 |
|---|---|---|
| committer | Markus Reiter | 2017-06-24 09:15:37 +0200 |
| commit | f24fc423624d25472786eac054948feb3430ce63 (patch) | |
| tree | 55f6e45d701e5c741a11269282c9a0befda2260b /Library | |
| parent | a1f9032b9574dcb27b34a6deb4c9730839daf0df (diff) | |
| download | brew-f24fc423624d25472786eac054948feb3430ce63.tar.bz2 | |
🔥 Remove test files after trashing.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb | 18 | ||||
| -rw-r--r-- | Library/Homebrew/test/cask/artifact/uninstall_zap_shared_examples.rb | 8 |
2 files changed, 24 insertions, 2 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb b/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb index d3bd5ded1..d574adee3 100644 --- a/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb +++ b/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb @@ -234,13 +234,27 @@ module Hbc ohai "Trashing files:" puts resolved_paths.map(&:first) - @command.run!("/usr/bin/osascript", args: ["-e", <<-EOS.undent, *resolved_paths.flat_map(&:last)]) + trash_paths(*resolved_paths.flat_map(&:last)) + end + + def trash_paths(*paths) + @command.run!("/usr/bin/osascript", args: ["-e", <<-'EOS'.undent, *paths]) on run argv repeat with i from 1 to (count argv) set item i of argv to (item i of argv as POSIX file) end repeat - tell application "Finder" to move argv to trash + tell application "Finder" + set trashedItems to (move argv to trash) + set output to "" + + repeat with i from 1 to (count trashedItems) + set item i of trashedItems to POSIX path of (item i of trashedItems as string) + set output to output & (item i of trashedItems) & (do shell script "printf \"\\0\"") + end repeat + + return output + end tell end run EOS end diff --git a/Library/Homebrew/test/cask/artifact/uninstall_zap_shared_examples.rb b/Library/Homebrew/test/cask/artifact/uninstall_zap_shared_examples.rb index 6c2fd1a05..b84c1fd00 100644 --- a/Library/Homebrew/test/cask/artifact/uninstall_zap_shared_examples.rb +++ b/Library/Homebrew/test/cask/artifact/uninstall_zap_shared_examples.rb @@ -176,6 +176,14 @@ shared_examples "#uninstall_phase or #zap_phase" do let(:fake_system_command) { Hbc::NeverSudoSystemCommand } let(:cask) { Hbc::CaskLoader.load_from_file(TEST_FIXTURE_DIR/"cask/Casks/with-#{artifact_name}-#{directive}.rb") } + before(:each) do + allow_any_instance_of(Hbc::Artifact::UninstallBase).to receive(:trash_paths) + .and_wrap_original do |method, *args| + result = method.call(*args) + FileUtils.rm_rf result.stdout.split("\0") + end + end + it "is supported" do paths.each do |path| expect(path).to exist |
