class Swaggable::CheckMandatoryParameters

Attributes

endpoint[R]
request[R]

Public Class Methods

call(*args) click to toggle source
# File lib/swaggable/check_mandatory_parameters.rb, line 10
def self.call(*args)
  new(*args).send :errors
end
new(args) click to toggle source
# File lib/swaggable/check_mandatory_parameters.rb, line 5
def initialize args
  @endpoint = args.fetch(:endpoint)
  @request = args.fetch(:request)
end

Private Instance Methods

errors() click to toggle source
# File lib/swaggable/check_mandatory_parameters.rb, line 16
def errors
  Errors::ValidationsCollection.new.tap do |errors|
    endpoint.parameters.select(&:required).each do |parameter|
      unless request.parameters(endpoint).include? parameter
        errors << Errors::Validation.new("Missing parameter #{parameter.inspect}")
      end
    end
  end
end