module Suretax::Concerns::Validatable

Public Class Methods

included(base) click to toggle source
# File lib/suretax/concerns/validatable.rb, line 3
def self.included(base)
  base.extend ClassMethods
  base.send(:include, Validations)
end

Public Instance Methods

errors() click to toggle source
# File lib/suretax/concerns/validatable.rb, line 8
def errors
  @errors = Errors.new

  self.class.validatable_attributes.each do |attribute_name|
    value = send(attribute_name)
    assertion = send("valid_#{attribute_name}?", value)

    @errors[attribute_name] = Error.new(attribute_name, value) unless assertion
  end

  @errors
end
Also aliased as: validate!
validate!()
Alias for: errors