Merge pull request #8335 from waldyrious/show-cask-descs-in-info-command

Show cask description in `brew cask info` command
This commit is contained in:
Markus Reiter 2020-08-14 00:52:27 +02:00 committed by GitHub
commit 3b2a9c3b55
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 39 additions and 10 deletions

View File

@ -40,6 +40,7 @@ module Cask
repo = repo_info(cask) repo = repo_info(cask)
output << repo + "\n" if repo output << repo + "\n" if repo
output << name_info(cask) output << name_info(cask)
output << desc_info(cask)
language = language_info(cask) language = language_info(cask)
output << language if language output << language if language
output << artifact_info(cask) + "\n" output << artifact_info(cask) + "\n"
@ -86,6 +87,13 @@ module Cask
EOS EOS
end end
def self.desc_info(cask)
<<~EOS
#{ohai_title("Description")}
#{cask.desc.nil? ? Formatter.error("None") : cask.desc}
EOS
end
def self.language_info(cask) def self.language_info(cask)
return if cask.languages.empty? return if cask.languages.empty?

View File

@ -16,7 +16,7 @@ describe Cask::Cmd::Home, :cask do
it "works for multiple Casks" do it "works for multiple Casks" do
expect(described_class).to receive(:open_url).with("https://brew.sh/") expect(described_class).to receive(:open_url).with("https://brew.sh/")
expect(described_class).to receive(:open_url).with("https://brew.sh/") expect(described_class).to receive(:open_url).with("https://transmissionbt.com/")
described_class.run("local-caffeine", "local-transmission") described_class.run("local-caffeine", "local-transmission")
end end

View File

@ -10,16 +10,18 @@ describe Cask::Cmd::Info, :cask do
it "displays some nice info about the specified Cask" do it "displays some nice info about the specified Cask" do
expect { expect {
described_class.run("local-caffeine") described_class.run("local-transmission")
}.to output(<<~EOS).to_stdout }.to output(<<~EOS).to_stdout
local-caffeine: 1.2.3 local-transmission: 2.61
https://brew.sh/ https://transmissionbt.com/
Not installed Not installed
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-caffeine.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-transmission.rb
==> Name ==> Name
None Transmission
==> Description
BitTorrent client
==> Artifacts ==> Artifacts
Caffeine.app (App) Transmission.app (App)
EOS EOS
end end
@ -33,6 +35,8 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-auto-updates.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-auto-updates.rb
==> Name ==> Name
AutoUpdates AutoUpdates
==> Description
None
==> Artifacts ==> Artifacts
AutoUpdates.app (App) AutoUpdates.app (App)
EOS EOS
@ -47,15 +51,19 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-caffeine.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-caffeine.rb
==> Name ==> Name
None None
==> Description
None
==> Artifacts ==> Artifacts
Caffeine.app (App) Caffeine.app (App)
local-transmission: 2.61 local-transmission: 2.61
https://brew.sh/ https://transmissionbt.com/
Not installed Not installed
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-transmission.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/local-transmission.rb
==> Name ==> Name
Transmission Transmission
==> Description
BitTorrent client
==> Artifacts ==> Artifacts
Transmission.app (App) Transmission.app (App)
EOS EOS
@ -78,6 +86,8 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-caveats.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-caveats.rb
==> Name ==> Name
None None
==> Description
None
==> Artifacts ==> Artifacts
Caffeine.app (App) Caffeine.app (App)
==> Caveats ==> Caveats
@ -103,6 +113,8 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-conditional-caveats.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-conditional-caveats.rb
==> Name ==> Name
None None
==> Description
None
==> Artifacts ==> Artifacts
Caffeine.app (App) Caffeine.app (App)
EOS EOS
@ -118,6 +130,8 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-languages.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/with-languages.rb
==> Name ==> Name
None None
==> Description
None
==> Languages ==> Languages
zh, en-US zh, en-US
==> Artifacts ==> Artifacts
@ -135,6 +149,8 @@ describe Cask::Cmd::Info, :cask do
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/without-languages.rb From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/without-languages.rb
==> Name ==> Name
None None
==> Description
None
==> Artifacts ==> Artifacts
Caffeine.app (App) Caffeine.app (App)
EOS EOS
@ -163,6 +179,8 @@ describe Cask::Cmd::Info, :cask do
==> Names ==> Names
Docker Community Edition Docker Community Edition
Docker CE Docker CE
==> Description
None
==> Artifacts ==> Artifacts
Docker.app (App) Docker.app (App)
==> Analytics ==> Analytics
@ -174,6 +192,8 @@ describe Cask::Cmd::Info, :cask do
==> Names ==> Names
Docker Community Edition Docker Community Edition
Docker CE Docker CE
==> Description
None
==> Artifacts ==> Artifacts
Docker.app (App) Docker.app (App)
==> Analytics ==> Analytics

View File

@ -90,7 +90,7 @@ describe Cask::Cmd::List, :cask do
let(:casks) { ["local-caffeine", "local-transmission"] } let(:casks) { ["local-caffeine", "local-transmission"] }
let(:expected_output) { let(:expected_output) {
<<~EOS <<~EOS
[{"token":"local-caffeine","name":[],"desc":null,"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/caffeine.zip","appcast":null,"version":"1.2.3","sha256":"67cdb8a02803ef37fdbf7e0be205863172e41a561ca446cd84f0d7ab35a99d94","artifacts":[["Caffeine.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null},{"token":"local-transmission","name":["Transmission"],"desc":null,"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/transmission-2.61.dmg","appcast":null,"version":"2.61","sha256":"e44ffa103fbf83f55c8d0b1bea309a43b2880798dae8620b1ee8da5e1095ec68","artifacts":[["Transmission.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null}] [{"token":"local-caffeine","name":[],"desc":null,"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/caffeine.zip","appcast":null,"version":"1.2.3","sha256":"67cdb8a02803ef37fdbf7e0be205863172e41a561ca446cd84f0d7ab35a99d94","artifacts":[["Caffeine.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null},{"token":"local-transmission","name":["Transmission"],"desc":"BitTorrent client","homepage":"https://transmissionbt.com/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/transmission-2.61.dmg","appcast":null,"version":"2.61","sha256":"e44ffa103fbf83f55c8d0b1bea309a43b2880798dae8620b1ee8da5e1095ec68","artifacts":[["Transmission.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null}]
EOS EOS
} }

View File

@ -4,7 +4,8 @@ cask "local-transmission" do
url "file://#{TEST_FIXTURE_DIR}/cask/transmission-2.61.dmg" url "file://#{TEST_FIXTURE_DIR}/cask/transmission-2.61.dmg"
name "Transmission" name "Transmission"
homepage "https://brew.sh/" desc "BitTorrent client"
homepage "https://transmissionbt.com/"
app "Transmission.app" app "Transmission.app"
end end