Class: Ucasy::Validators::RequiredAttributes

Inherits:
Callable
  • Object
show all
Defined in:
lib/ucasy/validators/required_attributes.rb

Instance Method Summary collapse

Methods inherited from Callable

call

Constructor Details

#initialize(context, required_attributes, klass) ⇒ RequiredAttributes

Returns a new instance of RequiredAttributes.



3
4
5
6
7
# File 'lib/ucasy/validators/required_attributes.rb', line 3

def initialize(context, required_attributes, klass)
  @context = context
  @required_attributes = required_attributes
  @klass = klass
end

Instance Method Details

#callObject



9
10
11
12
13
14
15
# File 'lib/ucasy/validators/required_attributes.rb', line 9

def call
  @required_attributes.each do |attribute|
    next if @context.respond_to?(attribute)

    raise ArgumentError, "You must set '#{attribute}' variable in '#{@klass}'"
  end
end