Class: PoroValidator::Validator::Validation

Inherits:
Object
  • Object
show all
Defined in:
lib/poro_validator/validator/validation.rb

Overview

Since:

  • 0.0.1

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attr_name, validator, options = nil) ⇒ Validation

Returns a new instance of Validation.

Since:

  • 0.0.1



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/poro_validator/validator/validation.rb', line 22

def initialize(attr_name, validator, options = nil)
  @attr_name = attr_name
  @validator = validator
  opts =
    case options
    when TrueClass
      {}
    when Hash
      options
    when Range, Array
      { in: options }
    else
      { with: options }
    end
  @options = opts
end

Class Method Details

.build(attr_name, validator, options) ⇒ Object

Builds a validation from the params passed which is initiated first then passed into the Validators.set_validator method

@params - name of the attribute to be validated @params - validator class to be used for validating attribute @params - arguments against validator and additional options

e.g, message:, on:, etc.

Since:

  • 0.0.1



12
13
14
15
16
17
18
19
20
# File 'lib/poro_validator/validator/validation.rb', line 12

def self.build(attr_name, validator, options)
  b = new(attr_name, validator, options)
  b = Factory::Validators.set_validator(
    b.attr_name,
    b.validator,
    b.options
  )
  b
end

Instance Method Details

#attr_nameObject

Since:

  • 0.0.1



43
44
45
# File 'lib/poro_validator/validator/validation.rb', line 43

def attr_name
  @attr_name
end

#optionsObject

Since:

  • 0.0.1



39
40
41
# File 'lib/poro_validator/validator/validation.rb', line 39

def options
  @options
end

#validatorObject

Since:

  • 0.0.1



47
48
49
# File 'lib/poro_validator/validator/validation.rb', line 47

def validator
  @validator
end