Skip to content

Commit 7d1c2ef

Browse files
samsonasikArshid
authored andcommitted
[AutoImport] Do not rename different namespaced function on auto import + RenameFunctionRector (#7214)
* [AutoImport] Skip different namespaced function on auto import + RenameFunctionRector * update fixture * Fix
1 parent b4c7736 commit 7d1c2ef

3 files changed

Lines changed: 31 additions & 0 deletions

File tree

src/NodeNameResolver/NodeNameResolver/FuncCallNameResolver.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ public function resolve(Node $node, ?Scope $scope): ?string
4949
}
5050
}
5151

52+
if (is_string($namespaceName)) {
53+
return $namespaceName;
54+
}
55+
5256
return (string) $node->name;
5357
}
5458
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?php
2+
3+
final class DontRenameDifferentNamespacedFunction
4+
{
5+
public function run(): void
6+
{
7+
$addressParts = Psl\Str\split($addressLine, $houseNumber);
8+
}
9+
}
10+
11+
?>
12+
-----
13+
<?php
14+
15+
use function Psl\Str\split;
16+
17+
final class DontRenameDifferentNamespacedFunction
18+
{
19+
public function run(): void
20+
{
21+
$addressParts = split($addressLine, $houseNumber);
22+
}
23+
}

tests/Issues/AutoImport/config/configured_rule.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use Rector\Php70\Rector\Ternary\TernaryToNullCoalescingRector;
88
use Rector\Php80\Rector\Class_\AnnotationToAttributeRector;
99
use Rector\Php80\ValueObject\AnnotationToAttribute;
10+
use Rector\Renaming\Rector\FuncCall\RenameFunctionRector;
1011
use Rector\Renaming\Rector\Name\RenameClassRector;
1112
use Rector\Symfony\Symfony44\Rector\ClassMethod\ConsoleExecuteReturnIntRector;
1213

@@ -22,4 +23,7 @@
2223
new AnnotationToAttribute('Doctrine\ORM\Mapping\Entity'),
2324
]);
2425
$rectorConfig->rules([ConsoleExecuteReturnIntRector::class, RemoveUnusedPrivatePropertyRector::class]);
26+
$rectorConfig->ruleWithConfiguration(RenameFunctionRector::class, [
27+
'split' => 'explode',
28+
]);
2529
};

0 commit comments

Comments
 (0)