Module: Aggrobot::QueryPlanner::ParametersValidator

Defined in:
lib/aggrobot/query_planner.rb

Class Method Summary collapse

Class Method Details

.raise_argument_error(opts, required_parameters, optional_parameters) ⇒ Object

Raises:

  • (ArgumentError)


27
28
29
30
31
32
33
# File 'lib/aggrobot/query_planner.rb', line 27

def self.raise_argument_error(opts, required_parameters, optional_parameters)
  raise ArgumentError, "      Wrong arguments given - \#{opts}\n      Required parameters are \#{required_parameters}\n      Optional parameters are \#{optional_parameters}\n  ERR\nend\n"

.validate_options(opts, required_parameters, optional_parameters) ⇒ Object



19
20
21
22
23
24
25
# File 'lib/aggrobot/query_planner.rb', line 19

def self.validate_options(opts, required_parameters, optional_parameters)
  params = opts.keys
  # raise errors for required parameters
  raise_argument_error(opts, required_parameters, optional_parameters) unless (required_parameters - params).empty?
  # raise errors if any extra arguments given
  raise_argument_error(opts, required_parameters, optional_parameters) unless (params - required_parameters - optional_parameters).empty?
end