aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMartin Schimandl2017-10-08 17:41:03 +0200
committerMartin Schimandl2017-11-10 20:16:38 +0100
commitdb2c86204b84e70ef6cef912ac410ea93551127f (patch)
tree5fca0ad2c8b861d4437f2c144d0255f7f4d0cc70 /Library
parent7f70080c94b6ef9b772b3464a0c0bb9420a407e0 (diff)
downloadbrew-db2c86204b84e70ef6cef912ac410ea93551127f.tar.bz2
internal_stanza.rb: Remove obsolete code. Improve detection of missing stanzas
internal_stanza_spec.rb: change do ... end blocks to { } blocks
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb10
-rw-r--r--Library/Homebrew/test/cask/cli/internal_stanza_spec.rb27
2 files changed, 20 insertions, 17 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb b/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb
index 4f8569444..49b187216 100644
--- a/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb
+++ b/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb
@@ -57,12 +57,6 @@ module Hbc
casks(alternative: -> { Hbc.all }).each do |cask|
print "#{cask}\t" if table?
- unless cask.respond_to?(stanza)
- opoo "no such stanza '#{stanza}' on Cask '#{cask}'" unless quiet?
- puts ""
- next
- end
-
begin
value = cask.send(stanza)
rescue StandardError
@@ -71,7 +65,9 @@ module Hbc
next
end
- if (value.nil? || value.is_a?(Array) && value.empty?) ||
+ if value.nil? || (value.respond_to?(:to_a) && value.to_a.empty?) ||
+ (value.respond_to?(:to_h) && value.to_h.empty?) ||
+ (value.respond_to?(:to_s) && value.to_s == "{}") ||
(artifact_name && !value.key?(artifact_name))
if artifact_name
diff --git a/Library/Homebrew/test/cask/cli/internal_stanza_spec.rb b/Library/Homebrew/test/cask/cli/internal_stanza_spec.rb
index f3002e222..52bbf4ee0 100644
--- a/Library/Homebrew/test/cask/cli/internal_stanza_spec.rb
+++ b/Library/Homebrew/test/cask/cli/internal_stanza_spec.rb
@@ -1,35 +1,42 @@
describe Hbc::CLI::InternalStanza, :cask do
it "shows stanza of the Specified Cask" do
command = described_class.new("gpg", "with-gpg")
- expect do
+ expect {
command.run
- end.to output("http://example.com/gpg-signature.asc\n").to_stdout
+ }.to output("http://example.com/gpg-signature.asc\n").to_stdout
end
it "raises an exception when stanza is invalid" do
- expect do
+ expect {
described_class.new("invalid_stanza", "with-gpg")
- end.to raise_error(/Illegal stanza/)
+ }.to raise_error(/Illegal stanza/)
end
it "raises an exception when normal stanza is not present on cask" do
command = described_class.new("caveats", "with-gpg")
- expect do
+ expect {
command.run
- end.to raise_error(/no such stanza/)
+ }.to raise_error(/no such stanza/)
end
it "raises an exception when artifact stanza is not present on cask" do
command = described_class.new("zap", "with-gpg")
- expect do
+ expect {
command.run
- end.to raise_error(/no such stanza/)
+ }.to raise_error(/no such stanza/)
+ end
+
+ it "raises an exception when 'depends_on' stanza is not present on cask" do
+ command = described_class.new("depends_on", "with-gpg")
+ expect {
+ command.run
+ }.to raise_error(/no such stanza/)
end
it "shows all artifact stanzas when using 'artifacts' keyword" do
command = described_class.new("artifacts", "with-gpg")
- expect do
+ expect {
command.run
- end.to output("{:app=>[[\"Caffeine.app\"]]}\n").to_stdout
+ }.to output("{:app=>[[\"Caffeine.app\"]]}\n").to_stdout
end
end