Module: Lite::Command::Extensions::Errors
- Included in:
- Procedure
- Defined in:
- lib/lite/command/extensions/errors.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #errored? ⇒ Boolean
- #errors ⇒ Object
- #fail! ⇒ Object
- #failure? ⇒ Boolean
- #merge_errors!(klass, direction: :from) ⇒ Object
- #merge_exception!(exception, key: :internal) ⇒ Object
- #result! ⇒ Object
- #status ⇒ Object
- #success? ⇒ Boolean
- #validate! ⇒ Object (also: #valid?)
Class Method Details
.included(klass) ⇒ Object
26 27 28 |
# File 'lib/lite/command/extensions/errors.rb', line 26 def included(klass) klass.extend(ClassMethods) end |
Instance Method Details
#errored? ⇒ Boolean
36 37 38 |
# File 'lib/lite/command/extensions/errors.rb', line 36 def errored? !errors.empty? end |
#errors ⇒ Object
32 33 34 |
# File 'lib/lite/command/extensions/errors.rb', line 32 def errors @errors ||= Lite::Errors::Messages.new end |
#fail! ⇒ Object
40 41 42 |
# File 'lib/lite/command/extensions/errors.rb', line 40 def fail! raise Lite::Command::ValidationError end |
#failure? ⇒ Boolean
44 45 46 |
# File 'lib/lite/command/extensions/errors.rb', line 44 def failure? called? && errored? end |
#merge_errors!(klass, direction: :from) ⇒ Object
48 49 50 51 52 53 54 55 |
# File 'lib/lite/command/extensions/errors.rb', line 48 def merge_errors!(klass, direction: :from) case direction when :from then errors.merge!(klass.errors) when :to then klass.errors.merge!(errors) end nil end |
#merge_exception!(exception, key: :internal) ⇒ Object
57 58 59 60 61 |
# File 'lib/lite/command/extensions/errors.rb', line 57 def merge_exception!(exception, key: :internal) errors.add(key, "#{exception.class} - #{exception.}") nil end |
#result! ⇒ Object
63 64 65 |
# File 'lib/lite/command/extensions/errors.rb', line 63 def result! result if valid? end |
#status ⇒ Object
67 68 69 70 71 |
# File 'lib/lite/command/extensions/errors.rb', line 67 def status return :pending unless called? success? ? :success : :failure end |
#success? ⇒ Boolean
73 74 75 |
# File 'lib/lite/command/extensions/errors.rb', line 73 def success? called? && !errored? end |
#validate! ⇒ Object Also known as: valid?
77 78 79 80 81 |
# File 'lib/lite/command/extensions/errors.rb', line 77 def validate! return true if success? fail! end |