-
-
Notifications
You must be signed in to change notification settings - Fork 739
Closed
rectorphp/rector-src
#6846Labels
Description
Bug Report
| Subject | Details |
|---|---|
| Rector version | 2.0.11 |
| PHPUnit version | 10.5.45 |
| Installed as | composer dependency |
Minimal PHP Code Causing Issue
See https://getrector.com/demo/d45106cc-fb9d-4188-8a67-b8aa0bcefe63
<?php
final class DemoFile
{
/**
* @test
* @testdox ::property is true
*/
public function myAwesomeTest(): void
{
self::assertTrue(true);
}
}Responsible rules
AnnotationToAttributeRector
Actual Behavior
I face this error:
symfony php vendor/bin/rector process /path/to/project/tests/PHPUnitLegacy/Entity/EpisodeTest.php --debug
[ERROR] Could not process "/path/to/project/tests/PHPUnitLegacy/Entity/EpisodeTest.php" file, due to:
"System error: "Name cannot be empty"
Stack trace:
#0 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/Node/Name.php(25):
PhpParser\Node\Name::prepareName()
#1
vendor/rector/rector/src/PhpAttribute/AnnotationToAttributeMapper/ClassConstFetchAnnotationToAttributeMapper.ph
p(34): PhpParser\Node\Name->__construct()
#2 vendor/rector/rector/src/PhpAttribute/AnnotationToAttributeMapper.php(42):
Rector\PhpAttribute\AnnotationToAttributeMapper\ClassConstFetchAnnotationToAttributeMapper->map()
#3 vendor/rector/rector/src/PhpAttribute/AnnotationToAttributeMapper/ArrayAnnotationToAttributeMapper.php(49):
Rector\PhpAttribute\AnnotationToAttributeMapper->map()
#4 vendor/rector/rector/src/PhpAttribute/AnnotationToAttributeMapper.php(42):
Rector\PhpAttribute\AnnotationToAttributeMapper\ArrayAnnotationToAttributeMapper->map()
#5 vendor/rector/rector/src/PhpAttribute/NodeFactory/PhpAttributeGroupFactory.php(115):
Rector\PhpAttribute\AnnotationToAttributeMapper->map()
#6 vendor/rector/rector/src/PhpAttribute/NodeFactory/PhpAttributeGroupFactory.php(80):
Rector\PhpAttribute\NodeFactory\PhpAttributeGroupFactory->createArgsFromItems()
#7
vendor/rector/rector/vendor/rector/rector-phpunit/rules/AnnotationsToAttributes/Rector/Class_/AnnotationWithVal
ueToAttributeRector.php(117):
Rector\PhpAttribute\NodeFactory\PhpAttributeGroupFactory->createFromClassWithItems()
#8 vendor/rector/rector/src/Rector/AbstractRector.php(112):
Rector\PHPUnit\AnnotationsToAttributes\Rector\Class_\AnnotationWithValueToAttributeRector->refactor()
#9 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(173):
Rector\Rector\AbstractRector->enterNode()
#10 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#11 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#12 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#13 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#14 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(71):
PhpParser\NodeTraverser->traverseArray()
#15 vendor/rector/rector/src/PhpParser/NodeTraverser/RectorNodeTraverser.php(49):
PhpParser\NodeTraverser->traverse()
#16 vendor/rector/rector/src/Application/FileProcessor.php(95):
Rector\PhpParser\NodeTraverser\RectorNodeTraverser->traverse()
#17 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(174):
Rector\Application\FileProcessor->processFile()
#18 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(151):
Rector\Application\ApplicationFileProcessor->processFile()
#19 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(128):
Rector\Application\ApplicationFileProcessor->processFiles()
#20 vendor/rector/rector/src/Console/Command/ProcessCommand.php(167):
Rector\Application\ApplicationFileProcessor->run()
#21 vendor/rector/rector/vendor/symfony/console/Command/Command.php(285):
Rector\Console\Command\ProcessCommand->execute()
#22 vendor/rector/rector/vendor/symfony/console/Application.php(900):
RectorPrefix202503\Symfony\Component\Console\Command\Command->run()
#23 vendor/rector/rector/vendor/symfony/console/Application.php(279):
RectorPrefix202503\Symfony\Component\Console\Application->doRunCommand()
#24 vendor/rector/rector/src/Console/ConsoleApplication.php(53):
RectorPrefix202503\Symfony\Component\Console\Application->doRun()
#25 vendor/rector/rector/vendor/symfony/console/Application.php(162):
Rector\Console\ConsoleApplication->doRun()
#26 vendor/rector/rector/bin/rector.php(130): RectorPrefix202503\Symfony\Component\Console\Application->run()
#27 vendor/rector/rector/bin/rector(5): require_once('...')
#28 vendor/bin/rector(119): include('...')
#29 {main}". On line: 243
Expected Behavior
<?php
final class DemoFile
{
#[\PHPUnit\Framework\Attributes\Test]
#[\PHPUnit\Framework\Attributes\TestDox('::property is true')]
public function myAwesomeTest(): void
{
self::assertTrue(true);
}
}Reactions are currently unavailable