Method: Schemacop::V3::OneOfNode#_validate
- Defined in:
- lib/schemacop/v3/one_of_node.rb
#_validate(data, result:) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/schemacop/v3/one_of_node.rb', line 26 def _validate(data, result:) if [:treat_blank_as_nil] && data.blank? && !data.is_a?(FalseClass) data = nil end super_data = super(data, result: result) return if super_data.nil? matches = matches(super_data) if matches.size == 1 matches.first._validate(super_data, result: result) else result.error "Matches #{matches.size} definitions but should match exactly 1." end end |