From c81605bfb196f1f64ee921df1c148c427d4467c1 Mon Sep 17 00:00:00 2001 From: vladar Date: Sun, 25 Oct 2015 19:35:36 +0600 Subject: [PATCH] Fixed bug with failing error reporting for mismatching interface / union implementations --- src/Executor/Executor.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Executor/Executor.php b/src/Executor/Executor.php index 6ed1e3e..50aca26 100644 --- a/src/Executor/Executor.php +++ b/src/Executor/Executor.php @@ -579,7 +579,7 @@ class Executor // than continuing execution. if (false === $runtimeType->isTypeOf($result, $info)) { throw new Error( - "Expected value of type $runtimeType but got: $result.", + "Expected value of type $runtimeType but got: " . Utils::getVariableType($result), $fieldASTs ); } @@ -590,8 +590,8 @@ class Executor for ($i = 0; $i < count($fieldASTs); $i++) { // Get memoized value if it exists $uid = self::getFieldUid($fieldASTs[$i], $runtimeType); - if (isset($exeContext->memoized['collectSubFields'][$uid][$runtimeType->name])) { - $subFieldASTs = $exeContext->memoized['collectSubFields'][$uid][$runtimeType->name]; + if (isset($exeContext->memoized['collectSubFields'][$uid])) { + $subFieldASTs = $exeContext->memoized['collectSubFields'][$uid]; } else { $selectionSet = $fieldASTs[$i]->selectionSet; @@ -603,7 +603,7 @@ class Executor $subFieldASTs, $visitedFragmentNames ); - $exeContext->memoized['collectSubFields'][$uid][$runtimeType->name] = $subFieldASTs; + $exeContext->memoized['collectSubFields'][$uid] = $subFieldASTs; } } }