Class: OpenAPIParser::SchemaValidator::ArrayValidator
- Defined in:
- lib/openapi_parser/schema_validators/array_validator.rb
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
Methods inherited from Base
#initialize, #validate_discriminator_schema
Constructor Details
This class inherits a constructor from OpenAPIParser::SchemaValidator::Base
Instance Method Details
#coerce_and_validate(value, schema, **_keyword_args) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/openapi_parser/schema_validators/array_validator.rb', line 5 def coerce_and_validate(value, schema, **_keyword_args) return OpenAPIParser::ValidateError.build_error_result(value, schema) unless value.kind_of?(Array) # array type have an schema in items property items_schema = schema.items coerced_values = value.map do |v| coerced, err = validatable.validate_schema(v, items_schema) return [nil, err] if err coerced end value.each_index { |idx| value[idx] = coerced_values[idx] } if @coerce_value [value, nil] end |