Sha256: 216680d651350f5acbfbe54ee829c21379db055f21e8c4a86e6a8cf39ecac7ad

Contents?: true

Size: 389 Bytes

Versions: 9

Compression:

Stored size: 389 Bytes

Contents

module ObjectAttorney
  module Validations
    class Custom
      attr_reader :options

      attr_writer :attorney

      def initialize(args)
        @methods = args

        @options = args.extract_options!
      end

      def validate(defendant)
        [*@methods].all? do |method|
          Helpers.call_method!(@attorney, method, defendant)
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
object_attorney-3.2.0 lib/object_attorney/validations/custom.rb
object_attorney-3.1.2 lib/object_attorney/validations/custom.rb
object_attorney-3.1.1 lib/object_attorney/validations/custom.rb
object_attorney-3.1.0 lib/object_attorney/validations/custom.rb
object_attorney-3.0.7 lib/object_attorney/validations/custom.rb
object_attorney-3.0.6 lib/object_attorney/validations/custom.rb
object_attorney-3.0.5 lib/object_attorney/validations/custom.rb
object_attorney-3.0.4 lib/object_attorney/validations/custom.rb
object_attorney-3.0.3 lib/object_attorney/validations/custom.rb