class IMissValidator::Inspector::LengthInspector
Check columns if defined limit, but no validator.
Public Class Methods
columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/length_inspector.rb, line 7 def self.columns(model) model.columns.select do |column| column.text? end end
inspect(model)
click to toggle source
# File lib/i_miss_validator/inspector/length_inspector.rb, line 26 def self.inspect(model) missing_columns(model).map do |column| { column: column.name, missing_validator: :length_validator, message: "length: { maximum: #{column.limit} }" } end end
missing_columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/length_inspector.rb, line 19 def self.missing_columns(model) validated_columns = validators(model).map(&:attributes).flatten.uniq columns(model).select do |column| validated_columns.include?(column.name.to_sym) == false end end
validators(model)
click to toggle source
# File lib/i_miss_validator/inspector/length_inspector.rb, line 13 def self.validators(model) model.validators.select do |validator| validator.class == ActiveModel::Validations::LengthValidator end end