Class: CompaniesHouseInputGateway::FormValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/companies_house_input_gateway/form_validator.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data, request_class) ⇒ FormValidator

Returns a new instance of FormValidator.



16
17
18
19
# File 'lib/companies_house_input_gateway/form_validator.rb', line 16

def initialize(data, request_class)
  @data = data
  @request_class = request_class
end

Class Method Details

.validate(data, request_class) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/companies_house_input_gateway/form_validator.rb', line 5

def self.validate(data, request_class)
  form_validator = new(data, request_class)
  validation = form_validator.validate_data

  if validation.failure?
    msg = "#{request_class} - has request parameters error: #{validation.errors.to_hash}"
    raise InvalidRequestError.new(msg, data)
  end
  validation
end

Instance Method Details

#validate_dataObject



21
22
23
# File 'lib/companies_house_input_gateway/form_validator.rb', line 21

def validate_data
  Validations.const_get(:"#{request_class}").call(data)
end