Class: BehaviorValidator
- Inherits:
-
ActiveModel::EachValidator
- Object
- ActiveModel::EachValidator
- BehaviorValidator
- Defined in:
- lib/behavior_validator.rb,
lib/behavior_validator/engine.rb,
lib/behavior_validator/version.rb
Defined Under Namespace
Classes: Engine
Constant Summary collapse
- VERSION =
'0.0.1'
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.reserved_options ⇒ Object
12 13 14 |
# File 'lib/behavior_validator.rb', line 12 def [:allow_nil, :allow_blank, :message, :on] end |
.valid?(value, options = {}) ⇒ Boolean
3 4 5 6 7 8 9 10 |
# File 'lib/behavior_validator.rb', line 3 def valid?(value, = {}) = .reject { |option| .include?(option) } .each_pair.all? do |method, expected_result| value.__send__(method) == expected_result end rescue NoMethodError false end |
Instance Method Details
#validate_each(record, attribute, value) ⇒ Object
17 18 19 20 21 |
# File 'lib/behavior_validator.rb', line 17 def validate_each(record, attribute, value) unless self.class.valid?(value, ) record.errors.add(attribute, [:message] || :invalid_behavior) end end |