mirror of
https://github.com/wavetermdev/homebrew-cask.git
synced 2026-08-05 13:43:24 -07:00
Print error message with suggestions if header parse failed
This commit is contained in:
@@ -116,6 +116,7 @@ class Hbc::CLI
|
||||
run_command(command, *rest)
|
||||
rescue Hbc::CaskError, Hbc::CaskSha256MismatchError => e
|
||||
onoe e
|
||||
puts Hbc::Utils.error_message_with_suggestions if e.is_a?(Hbc::CaskHeaderParseError)
|
||||
$stderr.puts e.backtrace if Hbc.debug
|
||||
exit 1
|
||||
rescue StandardError, ScriptError, NoMemoryError => e
|
||||
|
||||
@@ -126,6 +126,9 @@ class Hbc::CaskInvalidError < Hbc::CaskError
|
||||
end
|
||||
end
|
||||
|
||||
class Hbc::CaskHeaderParseError < Hbc::CaskInvalidError
|
||||
end
|
||||
|
||||
class Hbc::CaskSha256MissingError < ArgumentError
|
||||
end
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ class Hbc::Source::PathBase
|
||||
raise Hbc::CaskInvalidError.new(cask_token, "Bad header line: '#{header_token}' does not match file name")
|
||||
end
|
||||
else
|
||||
raise Hbc::CaskInvalidError.new(cask_token, "Bad header line: parse failed")
|
||||
raise Hbc::CaskHeaderParseError.new(cask_token, "Bad header line: parse failed")
|
||||
end
|
||||
|
||||
# simulate "require"
|
||||
|
||||
@@ -48,7 +48,7 @@ describe Hbc::DSL do
|
||||
it "requires a valid header format" do
|
||||
err = lambda {
|
||||
invalid_cask = Hbc.load('invalid/invalid-header-format')
|
||||
}.must_raise(Hbc::CaskInvalidError)
|
||||
}.must_raise(Hbc::CaskHeaderParseError)
|
||||
err.message.must_include 'Bad header line: parse failed'
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user