Class: ActionLogic::ActionValidation::AttributeValidation

Inherits:
BaseValidation
  • Object
show all
Defined in:
lib/action_logic/action_validation/attribute_validation.rb

Class Method Summary collapse

Methods inherited from BaseValidation

error_message_format

Class Method Details

.validate!(validation_rules, context) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/action_logic/action_validation/attribute_validation.rb', line 8

def self.validate!(validation_rules, context)
  existing_attributes = context.to_h.keys
  expected_attributes = validation_rules.keys || []
  missing_attributes  = expected_attributes - existing_attributes

  raise ActionLogic::MissingAttributeError.new(error_message_format(missing_attributes.join(", ") + " attributes are missing")) if missing_attributes.any?
end