Browse Source

add unlinkapps for cli access to revert linkapps

phinze 12 years ago
parent
commit
6cb1afa246
  1. 12
      lib/cask/cli/unlinkapps.rb
  2. 24
      test/cli/unlinkapps_test.rb

12
lib/cask/cli/unlinkapps.rb

@ -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

24
test/cli/unlinkapps_test.rb

@ -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…
Cancel
Save