class IMissValidator::Inspector::AcceptanceInspector
Check columns if defined as integer, but no validator.
Public Class Methods
columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/acceptance_inspector.rb, line 7 def self.columns(model) model.columns.select do |column| column.type == :boolean end end
inspect(model)
click to toggle source
# File lib/i_miss_validator/inspector/acceptance_inspector.rb, line 26 def self.inspect(model) missing_columns(model).map do |column| { column: column.name, missing_validator: :acceptance_validator, message: "acceptance: true or acceptance: { accept: 'true', 'false' }" } end end
missing_columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/acceptance_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/acceptance_inspector.rb, line 13 def self.validators(model) model.validators.select do |validator| validator.class == ActiveModel::Validations::AcceptanceValidator end end