nodeNameResolver = $nodeNameResolver; $this->valueResolver = $valueResolver; } /** * @return array * @param \PhpParser\Node\Expr\FuncCall|\PhpParser\Node\Expr\StaticCall $node */ public function collectMockVariableName($node) : array { $mockVariableTypesByNames = []; $parentNode = $node->getAttribute(\Rector\NodeTypeResolver\Node\AttributeKey::PARENT_NODE); if (!$parentNode instanceof \PhpParser\Node\Expr\Assign) { return []; } if (!$parentNode->var instanceof \PhpParser\Node\Expr\Variable) { return []; } /** @var Variable $variable */ $variable = $parentNode->var; /** @var string $variableName */ $variableName = $this->nodeNameResolver->getName($variable); $type = $node->args[0]->value; $mockedType = $this->valueResolver->getValue($type); $mockVariableTypesByNames[$variableName] = $mockedType; return $mockVariableTypesByNames; } }