Class: ParamsChecker::ParamChecker::CharParamChecker

Inherits:
BaseParamChecker show all
Includes:
SimpleCommand
Defined in:
lib/params_checker/param_checker.rb

Instance Attribute Summary

Attributes inherited from BaseParamChecker

#fields, #key, #opts

Instance Method Summary collapse

Methods inherited from BaseParamChecker

#add_error, #initialize

Constructor Details

This class inherits a constructor from ParamsChecker::ParamChecker::BaseParamChecker

Instance Method Details

#callObject



72
73
74
75
76
# File 'lib/params_checker/param_checker.rb', line 72

def call
    return nil if fields[key][:allow_nil] && opts[key].nil?

    check_type && check_allow_blank && check_length && opts[key]
end

#check_allow_blankObject



84
85
86
87
88
# File 'lib/params_checker/param_checker.rb', line 84

def check_allow_blank
    valid = !(!fields[key][:allow_blank] && opts[key].blank?)
    add_error('This field cannot be blank.') unless valid
    valid
end

#check_lengthObject



90
91
92
93
94
95
96
# File 'lib/params_checker/param_checker.rb', line 90

def check_length
    min_length = fields[key][:min_length]
    max_length = fields[key][:max_length]
    valid = (min_length..max_length).include? opts[key].length
    add_error("This string field's length must be in range from #{min_length} to #{max_length}.") unless valid
    valid
end

#check_typeObject



78
79
80
81
82
# File 'lib/params_checker/param_checker.rb', line 78

def check_type
    valid = opts[key].is_a?(String)
    add_error("This field's type must be string.") unless valid
    valid
end