module Pakyow::Behavior::Verification
Public Instance Methods
verifies(object)
click to toggle source
# File lib/pakyow/behavior/verification.rb, line 41 def verifies(object) @__object_name_to_verify = object end
verify(values = nil, &block)
click to toggle source
# File lib/pakyow/behavior/verification.rb, line 16 def verify(values = nil, &block) unless values if self.class.__object_name_to_verify.nil? raise "Expected values to be passed" else values = public_send(self.class.__object_name_to_verify) end end original_values = values.deep_dup result = Pakyow::Verifier.new(&block).call(values, context: self) unless result.verified? error = InvalidData.new_with_message(:verification) error.context = { object: original_values, result: result } raise error end end