class Openapi3Parser::NodeFactory::MediaType::EncodingValidator
Attributes
factory[R]
Public Class Methods
new(factory)
click to toggle source
# File lib/openapi3_parser/node_factory/media_type.rb, line 44 def initialize(factory) @factory = factory end
Public Instance Methods
call(validatable)
click to toggle source
# File lib/openapi3_parser/node_factory/media_type.rb, line 48 def call(validatable) missing_keys = validatable.input.keys - properties return if missing_keys.empty? validatable.add_error(error_message(missing_keys)) end
Private Instance Methods
error_message(missing_keys)
click to toggle source
# File lib/openapi3_parser/node_factory/media_type.rb, line 64 def error_message(missing_keys) keys = missing_keys.join(", ") "Keys are not defined as schema properties: #{keys}" end
properties()
click to toggle source
# File lib/openapi3_parser/node_factory/media_type.rb, line 59 def properties properties = factory.resolved_input.dig("schema", "properties") properties.respond_to?(:keys) ? properties.keys : [] end