Method: GraphQL::Query::InputValidationResult#merge_result!

Defined in:
lib/graphql/query/input_validation_result.rb

#merge_result!(path, inner_result) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/graphql/query/input_validation_result.rb', line 29

def merge_result!(path, inner_result)
  return if inner_result.valid?

  if inner_result.problems
    inner_result.problems.each do |p|
      item_path = [path, *p["path"]]
      add_problem(p["explanation"], item_path, message: p["message"], extensions: p["extensions"])
    end
  end
  # It could have been explicitly set on inner_result (if it had no problems)
  @valid = false
end