lib/graphql/execution/multiplex.rb in graphql-1.8.10 vs lib/graphql/execution/multiplex.rb in graphql-1.8.11

- old
+ new

@@ -99,11 +99,11 @@ # @param query [GraphQL::Query] # @return [Hash] The initial result (may not be finished if there are lazy values) def begin_query(query) operation = query.selected_operation - if operation.nil? || !query.valid? + if operation.nil? || !query.valid? || query.context.errors.any? NO_OPERATION else begin GraphQL::Execution::Execute::ExecutionFunctions.resolve_root_selection(query) rescue GraphQL::ExecutionError => err @@ -117,10 +117,11 @@ # @param query [GraphQL::Query] The query which was run # @return [Hash] final result of this query, including all values and errors def finish_query(data_result, query) # Assign the result so that it can be accessed in instrumentation query.result_values = if data_result.equal?(NO_OPERATION) - if !query.valid? + if !query.valid? || query.context.errors.any? + # A bit weird, but `Query#static_errors` _includes_ `query.context.errors` { "errors" => query.static_errors.map(&:to_h) } else data_result end else