diff options
| author | Markus Reiter | 2017-05-19 21:48:21 +0200 |
|---|---|---|
| committer | Markus Reiter | 2017-05-22 02:51:16 +0200 |
| commit | 66e9a060dea952a23bb6f9b40d88f2571254be6a (patch) | |
| tree | 6ecea103b37f14428303851f88c265e1d6d5dbd4 /Library/Homebrew/cask/lib | |
| parent | 1f5828c72de87ce87df31fad1c1046a6bcf4a994 (diff) | |
| download | brew-66e9a060dea952a23bb6f9b40d88f2571254be6a.tar.bz2 | |
Refactor `CLI::Home`.
Diffstat (limited to 'Library/Homebrew/cask/lib')
| -rw-r--r-- | Library/Homebrew/cask/lib/hbc/cli/home.rb | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/cli/home.rb b/Library/Homebrew/cask/lib/hbc/cli/home.rb index 66be49186..882cb67af 100644 --- a/Library/Homebrew/cask/lib/hbc/cli/home.rb +++ b/Library/Homebrew/cask/lib/hbc/cli/home.rb @@ -1,19 +1,28 @@ module Hbc class CLI class Home < Base - def self.run(*cask_tokens) - if cask_tokens.empty? + def self.run(*args) + new(*args).run + end + + def run + casks = @args.map(&CaskLoader.public_method(:load)) + + if casks.empty? odebug "Opening project homepage" - system "/usr/bin/open", "--", "https://caskroom.github.io/" + self.class.open_url "https://caskroom.github.io/" else - cask_tokens.each do |cask_token| - odebug "Opening homepage for Cask #{cask_token}" - cask = CaskLoader.load(cask_token) - system "/usr/bin/open", "--", cask.homepage + casks.each do |cask| + odebug "Opening homepage for Cask #{cask}" + self.class.open_url cask.homepage end end end + def self.open_url(url) + SystemCommand.run!(OS::PATH_OPEN, args: ["--", url]) + end + def self.help "opens the homepage of the given Cask" end |
