class Schemacop::V2::ArrayValidator
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
Schemacop::V2::NodeSupportingType::new
# File lib/schemacop/v2/validator/array_validator.rb, line 10 def initialize(*args) super type(:nil) if option(:nil) end
Public Instance Methods
validate(data, collector)
click to toggle source
# File lib/schemacop/v2/validator/array_validator.rb, line 15 def validate(data, collector) validate_custom_check(data, collector) if option?(:min) && data.size < option(:min) collector.error "Array must have more (>=) than #{option(:min)} elements." end if option?(:max) && data.size > option(:max) collector.error "Array must have less (<=) than #{option(:max)} elements." end data.each_with_index do |entry, index| collector.path("[#{index}]", index, :array) do validate_types(entry, collector) end end end