Sha256: c47877577e47b6224c146dfd037f32978173f8e7deea116eba7a7edba945e2d3

Contents?: true

Size: 584 Bytes

Versions: 12

Compression:

Stored size: 584 Bytes

Contents

class OpenAPIParser::SchemaValidator
  class BooleanValidator < Base
    TRUE_VALUES = ['true', '1'].freeze
    FALSE_VALUES = ['false', '0'].freeze

    def coerce_and_validate(value, schema)
      value = coerce(value) if @coerce_value

      return OpenAPIParser::ValidateError.build_error_result(value, schema) unless value.kind_of?(TrueClass) || value.kind_of?(FalseClass)

      [value, nil]
    end

    private

      def coerce(value)
        return true if TRUE_VALUES.include?(value)

        return false if FALSE_VALUES.include?(value)

        value
      end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
openapi_parser-0.2.7 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.6 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.5 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.4 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.3 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.2 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.1 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.2.0 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.1.9 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.1.8 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.1.7 lib/openapi_parser/schema_validators/boolean_validator.rb
openapi_parser-0.1.6 lib/openapi_parser/schema_validators/boolean_validator.rb