2018-09-06 08:29:14 +02:00
|
|
|
module Cask
|
2016-09-24 13:52:43 +02:00
|
|
|
module Checkable
|
|
|
|
def errors
|
2017-06-26 07:30:28 +02:00
|
|
|
@errors ||= []
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def warnings
|
2017-06-26 07:30:28 +02:00
|
|
|
@warnings ||= []
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def add_error(message)
|
2017-06-26 07:30:28 +02:00
|
|
|
errors << message
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def add_warning(message)
|
2017-06-26 07:30:28 +02:00
|
|
|
warnings << message
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def errors?
|
2017-06-26 07:30:28 +02:00
|
|
|
errors.any?
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def warnings?
|
2017-06-26 07:30:28 +02:00
|
|
|
warnings.any?
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def result
|
|
|
|
if errors?
|
2016-08-30 21:38:13 +02:00
|
|
|
Formatter.error("failed")
|
2016-09-24 13:52:43 +02:00
|
|
|
elsif warnings?
|
2016-08-30 21:38:13 +02:00
|
|
|
Formatter.warning("warning")
|
2016-09-24 13:52:43 +02:00
|
|
|
else
|
2016-08-30 21:38:13 +02:00
|
|
|
Formatter.success("passed")
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
end
|
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def summary
|
|
|
|
summary = ["#{summary_header}: #{result}"]
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
errors.each do |error|
|
2016-08-30 21:38:13 +02:00
|
|
|
summary << " #{Formatter.error("-")} #{error}"
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
warnings.each do |warning|
|
2016-08-30 21:38:13 +02:00
|
|
|
summary << " #{Formatter.warning("-")} #{warning}"
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
summary.join("\n")
|
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
end
|
|
|
|
end
|