class Codependent::Validators::SetterInjectionValidator

Constants

MISSING_ACCESSOR_KEYWORDS_ERROR

Public Instance Methods

call(_, state, dependencies) click to toggle source
# File lib/codependent/validators/setter_injection_validator.rb, line 8
def call(_, state, dependencies)
  raise Codependent::Errors::MissingTypeError unless state[:type]

  return unless dependencies.count > 0

  validate_setters(state[:type], dependencies)
end

Private Instance Methods

validate_setters(klass, dependencies) click to toggle source
# File lib/codependent/validators/setter_injection_validator.rb, line 18
def validate_setters(klass, dependencies)
  dependencies.each do |dep_id|
    unless klass.method_defined? "#{dep_id}=".to_sym
      raise Codependent::Errors::MissingAccessorError
    end
  end
end