Sha256: 63b29530803b7dfaceb65deeec5985a769febabd4093b8e70dfb3de232b32bfb
Contents?: true
Size: 880 Bytes
Versions: 2
Compression:
Stored size: 880 Bytes
Contents
class OpenAPIParser::SchemaValidator class FloatValidator < Base include ::OpenAPIParser::SchemaValidator::Enumable # validate float value by schema # @param [Object] value # @param [OpenAPIParser::Schemas::Schema] schema def coerce_and_validate(value, schema, **_keyword_args) value = coerce(value) if @coerce_value return validatable.validate_integer(value, schema) if value.kind_of?(Integer) coercer_and_validate_numeric(value, schema) end private def coercer_and_validate_numeric(value, schema) return OpenAPIParser::ValidateError.build_error_result(value, schema) unless value.kind_of?(Numeric) check_enum_include(value, schema) end def coerce(value) Float(value) rescue ArgumentError => e raise e unless e.message =~ /invalid value for Float/ end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
openapi_parser-0.3.1 | lib/openapi_parser/schema_validators/float_validator.rb |
openapi_parser-0.3.0 | lib/openapi_parser/schema_validators/float_validator.rb |