Class: Avro::SchemaValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/avro/schema_validator.rb

Defined Under Namespace

Classes: Result, ValidationError

Constant Summary collapse

ROOT_IDENTIFIER =
'.'.freeze
PATH_SEPARATOR =
'.'.freeze
INT_RANGE =
Schema::INT_MIN_VALUE..Schema::INT_MAX_VALUE
LONG_RANGE =
Schema::LONG_MIN_VALUE..Schema::LONG_MAX_VALUE
COMPLEX_TYPES =
[:array, :error, :map, :record, :request]
TypeMismatchError =
Class.new(ValidationError)

Class Method Summary collapse

Class Method Details

.validate!(expected_schema, logical_datum, encoded = false) ⇒ Object



65
66
67
68
69
70
# File 'lib/avro/schema_validator.rb', line 65

def validate!(expected_schema, logical_datum, encoded = false)
  result = Result.new
  validate_recursive(expected_schema, logical_datum, ROOT_IDENTIFIER, result, encoded)
  fail ValidationError, result if result.failure?
  result
end