Sha256: dc385bf3b37c398fc671605aaf2266503520ae8f66af225985b64e13386b750f

Contents?: true

Size: 618 Bytes

Versions: 23

Compression:

Stored size: 618 Bytes

Contents

class OpenAPIParser::SchemaValidator
  class AnyOfValidator < Base
    # @param [Object] value
    # @param [OpenAPIParser::Schemas::Schema] schema
    def coerce_and_validate(value, schema, **_keyword_args)
      if schema.discriminator
        return validate_discriminator_schema(schema.discriminator, value)
      end

      # in all schema return error (=true) not any of data
      schema.any_of.each do |s|
        coerced, err = validatable.validate_schema(value, s)
        return [coerced, nil] if err.nil?
      end
      [nil, OpenAPIParser::NotAnyOf.new(value, schema.object_reference)]
    end
  end
end

Version data entries

23 entries across 23 versions & 2 rubygems

Version Path
openapi_parser_firetail-1.0.0 lib/openapi_parser/schema_validator/any_of_validator.rb
openapi_parser-1.0.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-1.0.0.beta1 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.15.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.14.1 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.14.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.13.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.12.1 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.12.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.11.2 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.11.1 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.11.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.10.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.9.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.8.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.7.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.6.1 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.6.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.5.0 lib/openapi_parser/schema_validators/any_of_validator.rb
openapi_parser-0.4.1 lib/openapi_parser/schema_validators/any_of_validator.rb