Module: CodeCode::Common::Utils::Validation

Defined in:
lib/codecode/common/utils.rb

Overview

Utility methods for Validation

Instance Method Summary collapse

Instance Method Details

#check_fields(required_fields, params) ⇒ Object

Check if fields used in method params have their values empty or keys are missing

Parameters:

  • required_fields (Array[Symbol])

    array of symbols

  • params (Object)

Raises:



101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/codecode/common/utils.rb', line 101

def check_fields(required_fields, params)
  required_fields, missing, empty, null = required_fields, [], [], []
  required_fields.each { |key|
    missing.push(key) unless params.keys.include?(key)
    empty.push(key) if params[key.to_sym].eql?('')
    null.push(key) if params[key.to_sym].nil?
  }

  raise UnknownFieldException.new("Missing field(s) -> #{missing.join(', ')}.", 400) if missing.length > 0

  raise EmptyFieldException.new("Empty field(s) -> #{empty.join(', ')}.", 400) if empty.length > 0

  raise NullFieldException.new("Null field(s) -> #{null.join(', ')}.", 400) if null.length > 0
end