Module: CanCamel::Validators::PathValidators

Includes:
ValidatorsHelper
Defined in:
lib/can_camel/validators/path_validators.rb

Instance Method Summary collapse

Methods included from ValidatorsHelper

#validate_element

Instance Method Details

#path(path:, action: nil, subject: nil, group: nil) ⇒ Object Also known as: action, subject, group

Raises:



5
6
7
8
9
10
11
12
13
14
# File 'lib/can_camel/validators/path_validators.rb', line 5

def path(path:, action: nil, subject: nil, group: nil)
  raise ValidationError unless action || subject || group
  unless path && path.length == 3
    raise ValidationError, 'trying to validate not a group node or invalid node structure'
  end

  validate_element(element: path[0], value: group) if group
  validate_element(element: path[1], value: action) if action
  validate_element(element: path[2], value: subject) if subject
end