Sha256: 08d0dcfabfec096d5a6a4e63eb0ec50b3e4a39fe037b500f8c7c33c010f06942
Contents?: true
Size: 936 Bytes
Versions: 15
Compression:
Stored size: 936 Bytes
Contents
class OpenAPIParser::SchemaValidator class IntegerValidator < Base include ::OpenAPIParser::SchemaValidator::Enumable include ::OpenAPIParser::SchemaValidator::MinimumMaximum # validate integer 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 OpenAPIParser::ValidateError.build_error_result(value, schema) unless value.kind_of?(Integer) value, err = check_enum_include(value, schema) return [nil, err] if err check_minimum_maximum(value, schema) end private def coerce(value) return value if value.kind_of?(Integer) begin return Integer(value) rescue ArgumentError => e raise e unless e.message =~ /invalid value for Integer/ end value end end end
Version data entries
15 entries across 15 versions & 1 rubygems