2 changed files with 36 additions and 0 deletions
@ -0,0 +1,12 @@ |
|||||
|
class Cask::CLI::Unlinkapps |
||||
|
def self.run(*args) |
||||
|
casks_to_link = args.empty? ? Cask.installed : args |
||||
|
casks_to_link.each do |cask_name| |
||||
|
Cask::AppLinker.new(Cask.load(cask_name)).unlink |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def self.help |
||||
|
"removes symlinks from cask-installed .app files from ~/Applications" |
||||
|
end |
||||
|
end |
@ -0,0 +1,24 @@ |
|||||
|
require 'test_helper' |
||||
|
|
||||
|
describe Cask::CLI::Unlinkapps do |
||||
|
before do |
||||
|
shutup do |
||||
|
# use CLI so both casks start installed and linked |
||||
|
Cask::CLI::Install.run('local-caffeine', 'local-transmission') |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
it "only unlinks casks mentioned when arguments are provided" do |
||||
|
Cask::CLI::Unlinkapps.run('local-transmission') |
||||
|
|
||||
|
(Cask.appdir/"Transmission.app").wont_be :symlink? |
||||
|
(Cask.appdir/"Caffeine.app").must_be :symlink? |
||||
|
end |
||||
|
|
||||
|
it "unlinks all installed casks when no arguments supplied" do |
||||
|
Cask::CLI::Unlinkapps.run |
||||
|
|
||||
|
(Cask.appdir/"Transmission.app").wont_be :symlink? |
||||
|
(Cask.appdir/"Caffeine.app").wont_be :symlink? |
||||
|
end |
||||
|
end |
Loading…
Reference in new issue