Sha256: 6965f10312c8825321d692067290fe9ff19a23e81d821662dd27e1e6a071e4c4
Contents?: true
Size: 810 Bytes
Versions: 3
Compression:
Stored size: 810 Bytes
Contents
require 'json-schema/attribute' module JSON class Schema class PatternPropertiesAttribute < Attribute def self.validate(current_schema, data, fragments, processor, validator, options = {}) if data.is_a?(Hash) current_schema.schema['patternProperties'].each do |property,property_schema| r = Regexp.new(property) # Check each key in the data hash to see if it matches the regex data.each do |key,value| if r.match(key) schema = JSON::Schema.new(property_schema,current_schema.uri,validator) fragments << key schema.validate(data[key],fragments,processor,options) fragments.pop end end end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems