From 83686fc1538fc690c84a7f7c2fbb5e6e2385cfaa Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Tue, 10 Dec 2024 12:41:25 +0100 Subject: [PATCH 1/2] [PHPUnit] Support list in YieldDataProviderRector --- .../Fixture/use_data_provider_with_phpdoc.php.inc | 2 ++ rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/rules-tests/CodeQuality/Rector/Class_/YieldDataProviderRector/Fixture/use_data_provider_with_phpdoc.php.inc b/rules-tests/CodeQuality/Rector/Class_/YieldDataProviderRector/Fixture/use_data_provider_with_phpdoc.php.inc index 77decd6f..e98c3430 100644 --- a/rules-tests/CodeQuality/Rector/Class_/YieldDataProviderRector/Fixture/use_data_provider_with_phpdoc.php.inc +++ b/rules-tests/CodeQuality/Rector/Class_/YieldDataProviderRector/Fixture/use_data_provider_with_phpdoc.php.inc @@ -20,6 +20,7 @@ final class UseDataProviderTestPhpdoc extends TestCase ]; } + /** @return list> */ public static function dataProvider() { return [ @@ -51,6 +52,7 @@ final class UseDataProviderTestPhpdoc extends TestCase yield [', array> */ public static function dataProvider(): \Iterator { yield ['getReturnType() instanceof ArrayType) { + if ($phpDocInfo->getReturnType()->isArray()->yes()) { $keyType = $phpDocInfo->getReturnType() ->getIterableKeyType(); $itemType = $phpDocInfo->getReturnType() From f5a5b7b486fb10a8561590e49902fac6940a2fe8 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Tue, 10 Dec 2024 13:39:57 +0100 Subject: [PATCH 2/2] cs --- rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php | 1 - 1 file changed, 1 deletion(-) diff --git a/rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php b/rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php index 06ea860c..bc0273d8 100644 --- a/rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php +++ b/rules/CodeQuality/Rector/Class_/YieldDataProviderRector.php @@ -11,7 +11,6 @@ use PhpParser\Node\Stmt\ClassMethod; use PhpParser\Node\Stmt\Return_; use PHPStan\PhpDocParser\Ast\PhpDoc\ReturnTagValueNode; -use PHPStan\Type\ArrayType; use PHPStan\Type\Generic\GenericObjectType; use Rector\BetterPhpDocParser\PhpDocInfo\PhpDocInfoFactory; use Rector\BetterPhpDocParser\PhpDocManipulator\PhpDocTypeChanger;