Method: MultiMail::Service#validate_options
- Defined in:
- lib/multi_mail/service.rb
#validate_options(options, raise_error_if_unrecognized = true) ⇒ Object
Ensures that required arguments are present and that optional arguments are recognized.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/multi_mail/service.rb', line 45 def (, raise_error_if_unrecognized = true) keys = [] for key, value in unless value.nil? keys << key end end missing = requirements - keys unless missing.empty? raise ArgumentError, "Missing required arguments: #{missing.map(&:to_s).sort.join(', ')}" end if !recognizes.empty? && raise_error_if_unrecognized unrecognized = .keys - requirements - recognized unless unrecognized.empty? raise ArgumentError, "Unrecognized arguments: #{unrecognized.map(&:to_s).sort.join(', ')}" end end end |