2 changed files with 57 additions and 0 deletions
@ -0,0 +1,16 @@ |
|||
module Cask::CLI::Open |
|||
def self.run(*cask_names) |
|||
cask_names.each do |cask_name| |
|||
begin |
|||
cask = Cask.load(cask_name) |
|||
system "open", cask.homepage |
|||
rescue CaskUnavailableError => e |
|||
onoe e |
|||
end |
|||
end |
|||
end |
|||
|
|||
def self.help |
|||
"opens the homepage of the cask of the given name" |
|||
end |
|||
end |
@ -0,0 +1,41 @@ |
|||
require 'test_helper' |
|||
|
|||
module RecordSystemCalls |
|||
def system(*command) |
|||
system_commands << command |
|||
end |
|||
|
|||
def reset! |
|||
@system_commands = [] |
|||
end |
|||
|
|||
def system_commands |
|||
@system_commands ||= [] |
|||
end |
|||
end |
|||
|
|||
module Cask::CLI::Open |
|||
extend RecordSystemCalls |
|||
end |
|||
|
|||
describe Cask::CLI::Open do |
|||
before do |
|||
Cask::CLI::Open.reset! |
|||
end |
|||
|
|||
it 'opens the homepage for the specified cask' do |
|||
Cask::CLI::Open.run('alfred') |
|||
Cask::CLI::Open.system_commands.must_equal [ |
|||
['open', 'http://www.alfredapp.com/'] |
|||
] |
|||
end |
|||
|
|||
it 'works for multiple casks' do |
|||
Cask::CLI::Open.run('alfred', 'adium') |
|||
Cask::CLI::Open.system_commands.must_equal [ |
|||
['open', 'http://www.alfredapp.com/'], |
|||
['open', 'http://www.adium.im/'] |
|||
] |
|||
end |
|||
end |
|||
|
Loading…
Reference in new issue