lib/metaractor/spec.rb in metaractor-3.3.0 vs lib/metaractor/spec.rb in metaractor-3.3.2

- old
+ new

@@ -1,7 +1,7 @@ -require 'metaractor' -require 'forwardable' +require "metaractor" +require "forwardable" module Metaractor module Spec module Helpers def context_creator(error_message: nil, error_messages: [], errors: [], valid: nil, invalid: nil, success: nil, failure: nil, **attributes) @@ -11,19 +11,23 @@ result = Interactor::Context.build(attributes) result.add_errors(messages: error_messages) result.add_errors(errors: errors) - if (valid != nil && !valid) || (invalid != nil && invalid) + if (!valid.nil? && !valid) || (!invalid.nil? && invalid) result.invalidate! end if !result.errors.empty? || result.invalid? || - (success != nil && !success) || - (failure != nil && failure) - result.fail! rescue Interactor::Failure + (!success.nil? && !success) || + (!failure.nil? && failure) + begin + result.fail! + rescue + Interactor::Failure + end end result end end @@ -67,8 +71,7 @@ @actual.errors.full_messages end end end end - end end