Sha256: e1a3c3a2284a19b8865a5774f3d451a11977c40098d843c4e2eab104227e90b4
Contents?: true
Size: 1.05 KB
Versions: 2
Compression:
Stored size: 1.05 KB
Contents
module ObjectAttorney class Accusation def initialize(validation, attorney, defendant) @attorney = attorney @defendant = defendant @validation = validation end def sustained? @validation.attorney = @attorney if @validation.respond_to?(:attorney=) # expected to be an ActiveModel::Validations::<Class> instance @validation.validate(@defendant) end def founded return true if options[:if].nil? && options[:unless].nil? if_condition_true || unless_condition_true end protected ######################## PROTECTED ############################### def if_condition_true return nil if options[:if].nil? Helpers.call_proc_or_method(@attorney, options[:if], @defendant) end def unless_condition_true return nil if options[:unless].nil? !Helpers.call_proc_or_method(@attorney, options[:unless], @defendant) end private ########################### PRIVATE ################################ def options @validation.options end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
object_attorney-3.0.2 | lib/object_attorney/accusation.rb |
object_attorney-3.0.0 | lib/object_attorney/accusation.rb |