Class: OpenapiFirst::ResponseValidation::Validator

Inherits:
Object
  • Object
show all
Defined in:
lib/openapi_first/response_validation/validator.rb

Overview

Validates a RuntimeResponse against an Operation.

Instance Method Summary collapse

Constructor Details

#initialize(operation) ⇒ Validator

Returns a new instance of Validator.



9
10
11
# File 'lib/openapi_first/response_validation/validator.rb', line 9

def initialize(operation)
  @operation = operation
end

Instance Method Details

#validate(runtime_response) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/openapi_first/response_validation/validator.rb', line 13

def validate(runtime_response)
  return unless operation

  catch Failure::FAILURE do
    validate_defined(runtime_response)
    response_definition = runtime_response.response_definition
    validate_response_body(response_definition.content_schema, runtime_response)
    validate_response_headers(response_definition.headers, runtime_response.headers)
    nil
  end
end