diff --git a/docs/rector_rules_overview.md b/docs/rector_rules_overview.md
index d9ae4291824..03ac98c62fa 100644
--- a/docs/rector_rules_overview.md
+++ b/docs/rector_rules_overview.md
@@ -1,4 +1,4 @@
-# 514 Rules Overview
+# 512 Rules Overview
@@ -42,8 +42,6 @@
- [EarlyReturn](#earlyreturn) (11)
-- [MockeryToProphecy](#mockerytoprophecy) (2)
-
- [MysqlToMysqli](#mysqltomysqli) (4)
- [Naming](#naming) (6)
@@ -6236,40 +6234,6 @@ Changes Single return of || to early returns
-## MockeryToProphecy
-
-### MockeryCloseRemoveRector
-
-Removes mockery close from test classes
-
-- class: [`Rector\MockeryToProphecy\Rector\StaticCall\MockeryCloseRemoveRector`](../rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php)
-
-```diff
- public function tearDown() : void
- {
-- \Mockery::close();
- }
-```
-
-
-
-### MockeryCreateMockToProphizeRector
-
-Changes mockery mock creation to Prophesize
-
-- class: [`Rector\MockeryToProphecy\Rector\ClassMethod\MockeryCreateMockToProphizeRector`](../rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php)
-
-```diff
--$mock = \Mockery::mock('MyClass');
-+$mock = $this->prophesize('MyClass');
-+
- $service = new Service();
--$service->injectDependency($mock);
-+$service->injectDependency($mock->reveal());
-```
-
-
-
## MysqlToMysqli
### MysqlAssignToMysqliRector
diff --git a/rules/MockeryToProphecy/Collector/MockVariableCollector.php b/rules/MockeryToProphecy/Collector/MockVariableCollector.php
deleted file mode 100644
index 69a4924b3c8..00000000000
--- a/rules/MockeryToProphecy/Collector/MockVariableCollector.php
+++ /dev/null
@@ -1,60 +0,0 @@
-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);
- if (!isset($node->args[0])) {
- return [];
- }
- if (!$node->args[0] instanceof \PhpParser\Node\Arg) {
- return [];
- }
- $type = $node->args[0]->value;
- $mockedType = $this->valueResolver->getValue($type);
- $mockVariableTypesByNames[$variableName] = $mockedType;
- return $mockVariableTypesByNames;
- }
-}
diff --git a/rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php b/rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php
deleted file mode 100644
index 595532a555c..00000000000
--- a/rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php
+++ /dev/null
@@ -1,132 +0,0 @@
-
- */
- private $mockVariableTypesByNames = [];
- /**
- * @readonly
- * @var \Rector\MockeryToProphecy\Collector\MockVariableCollector
- */
- private $mockVariableCollector;
- /**
- * @readonly
- * @var \Rector\PHPUnit\NodeAnalyzer\TestsNodeAnalyzer
- */
- private $testsNodeAnalyzer;
- public function __construct(\Rector\MockeryToProphecy\Collector\MockVariableCollector $mockVariableCollector, \Rector\PHPUnit\NodeAnalyzer\TestsNodeAnalyzer $testsNodeAnalyzer)
- {
- $this->mockVariableCollector = $mockVariableCollector;
- $this->testsNodeAnalyzer = $testsNodeAnalyzer;
- }
- /**
- * @return array>
- */
- public function getNodeTypes() : array
- {
- return [\PhpParser\Node\Stmt\ClassMethod::class];
- }
- /**
- * @param ClassMethod $node
- */
- public function refactor(\PhpParser\Node $node) : ?\PhpParser\Node
- {
- if (!$this->testsNodeAnalyzer->isInTestClass($node)) {
- return null;
- }
- $this->replaceMockCreationsAndCollectVariableNames($node);
- $this->revealMockArguments($node);
- return $node;
- }
- public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
- {
- return new \Symplify\RuleDocGenerator\ValueObject\RuleDefinition('Changes mockery mock creation to Prophesize', [new \Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample(<<<'CODE_SAMPLE'
-$mock = \Mockery::mock('MyClass');
-$service = new Service();
-$service->injectDependency($mock);
-CODE_SAMPLE
-, <<<'CODE_SAMPLE'
- $mock = $this->prophesize('MyClass');
-
-$service = new Service();
-$service->injectDependency($mock->reveal());
-CODE_SAMPLE
-)]);
- }
- private function replaceMockCreationsAndCollectVariableNames(\PhpParser\Node\Stmt\ClassMethod $classMethod) : void
- {
- if ($classMethod->stmts === null) {
- return;
- }
- $this->traverseNodesWithCallable($classMethod->stmts, function (\PhpParser\Node $node) : ?MethodCall {
- if (!$node instanceof \PhpParser\Node\Expr\StaticCall) {
- return null;
- }
- $callerType = $this->nodeTypeResolver->getType($node->class);
- if (!$callerType->isSuperTypeOf(new \PHPStan\Type\ObjectType('Mockery'))->yes()) {
- return null;
- }
- if (!$this->isName($node->name, 'mock')) {
- return null;
- }
- $collectedVariableTypesByNames = $this->mockVariableCollector->collectMockVariableName($node);
- $item0Unpacked = $this->mockVariableTypesByNames;
- /** @var array $result */
- $result = \array_merge($item0Unpacked, $collectedVariableTypesByNames);
- $this->mockVariableTypesByNames = $result;
- $parentNode = $node->getAttribute(\Rector\NodeTypeResolver\Node\AttributeKey::PARENT_NODE);
- if ($parentNode instanceof \PhpParser\Node\Arg) {
- $prophesizeMethodCall = $this->createProphesizeMethodCall($node);
- return $this->nodeFactory->createMethodCall($prophesizeMethodCall, 'reveal');
- }
- return $this->createProphesizeMethodCall($node);
- });
- }
- private function revealMockArguments(\PhpParser\Node\Stmt\ClassMethod $classMethod) : void
- {
- if ($classMethod->stmts === null) {
- return;
- }
- $this->traverseNodesWithCallable($classMethod->stmts, function (\PhpParser\Node $node) : ?Arg {
- if (!$node instanceof \PhpParser\Node\Arg) {
- return null;
- }
- if (!$node->value instanceof \PhpParser\Node\Expr\Variable) {
- return null;
- }
- /** @var string $variableName */
- $variableName = $this->getName($node->value);
- if (!isset($this->mockVariableTypesByNames[$variableName])) {
- return null;
- }
- $methodCall = $this->nodeFactory->createMethodCall($node->value, 'reveal');
- $node->value = $methodCall;
- return $node;
- });
- }
- private function createProphesizeMethodCall(\PhpParser\Node\Expr\StaticCall $staticCall) : \PhpParser\Node\Expr\MethodCall
- {
- return $this->nodeFactory->createLocalMethodCall('prophesize', [$staticCall->args[0]]);
- }
-}
diff --git a/rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php b/rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php
deleted file mode 100644
index 3f5a4ad0cad..00000000000
--- a/rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php
+++ /dev/null
@@ -1,67 +0,0 @@
-testsNodeAnalyzer = $testsNodeAnalyzer;
- }
- /**
- * @return array>
- */
- public function getNodeTypes() : array
- {
- return [\PhpParser\Node\Expr\StaticCall::class];
- }
- /**
- * @param StaticCall $node
- */
- public function refactor(\PhpParser\Node $node) : ?\PhpParser\Node
- {
- if (!$this->testsNodeAnalyzer->isInTestClass($node)) {
- return null;
- }
- $callerType = $this->nodeTypeResolver->getType($node->class);
- if (!$callerType->isSuperTypeOf(new \PHPStan\Type\ObjectType('Mockery'))->yes()) {
- return null;
- }
- if (!$this->isName($node->name, 'close')) {
- return null;
- }
- $this->removeNode($node);
- return null;
- }
- public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
- {
- return new \Symplify\RuleDocGenerator\ValueObject\RuleDefinition('Removes mockery close from test classes', [new \Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample(<<<'CODE_SAMPLE'
-public function tearDown() : void
-{
- \Mockery::close();
-}
-CODE_SAMPLE
-, <<<'CODE_SAMPLE'
-public function tearDown() : void
-{
-}
-CODE_SAMPLE
-)]);
- }
-}
diff --git a/src/Application/VersionResolver.php b/src/Application/VersionResolver.php
index da7b3ad483a..ed704d9e6ea 100644
--- a/src/Application/VersionResolver.php
+++ b/src/Application/VersionResolver.php
@@ -16,11 +16,11 @@ final class VersionResolver
/**
* @var string
*/
- public const PACKAGE_VERSION = '77a4582d5044446b8da43ab91a09082fa0413a23';
+ public const PACKAGE_VERSION = '320cdcd8dec579a3bb9a6138d1e50f72a22c0419';
/**
* @var string
*/
- public const RELEASE_DATE = '2022-03-03 11:31:45';
+ public const RELEASE_DATE = '2022-03-03 17:31:12';
public static function resolvePackageVersion() : string
{
$process = new \RectorPrefix20220303\Symfony\Component\Process\Process(['git', 'log', '--pretty="%H"', '-n1', 'HEAD'], __DIR__);
diff --git a/vendor/autoload.php b/vendor/autoload.php
index 988f217dd7d..5ecd3c78b30 100644
--- a/vendor/autoload.php
+++ b/vendor/autoload.php
@@ -4,4 +4,4 @@
require_once __DIR__ . '/composer/autoload_real.php';
-return ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b::getLoader();
+return ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f::getLoader();
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index 1a23c84be19..2940cb88b6e 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -2146,9 +2146,6 @@ return array(
'Rector\\Laravel\\ValueObject\\AddArgumentDefaultValue' => $vendorDir . '/rector/rector-laravel/src/ValueObject/AddArgumentDefaultValue.php',
'Rector\\Laravel\\ValueObject\\ServiceNameTypeAndVariableName' => $vendorDir . '/rector/rector-laravel/src/ValueObject/ServiceNameTypeAndVariableName.php',
'Rector\\Laravel\\ValueObject\\TypeToTimeMethodAndPosition' => $vendorDir . '/rector/rector-laravel/src/ValueObject/TypeToTimeMethodAndPosition.php',
- 'Rector\\MockeryToProphecy\\Collector\\MockVariableCollector' => $baseDir . '/rules/MockeryToProphecy/Collector/MockVariableCollector.php',
- 'Rector\\MockeryToProphecy\\Rector\\ClassMethod\\MockeryCreateMockToProphizeRector' => $baseDir . '/rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php',
- 'Rector\\MockeryToProphecy\\Rector\\StaticCall\\MockeryCloseRemoveRector' => $baseDir . '/rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php',
'Rector\\MysqlToMysqli\\Rector\\Assign\\MysqlAssignToMysqliRector' => $baseDir . '/rules/MysqlToMysqli/Rector/Assign/MysqlAssignToMysqliRector.php',
'Rector\\MysqlToMysqli\\Rector\\FuncCall\\MysqlFuncCallToMysqliRector' => $baseDir . '/rules/MysqlToMysqli/Rector/FuncCall/MysqlFuncCallToMysqliRector.php',
'Rector\\MysqlToMysqli\\Rector\\FuncCall\\MysqlPConnectToMysqliConnectRector' => $baseDir . '/rules/MysqlToMysqli/Rector/FuncCall/MysqlPConnectToMysqliConnectRector.php',
diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php
index 88b44b5b838..bae659a59a2 100644
--- a/vendor/composer/autoload_real.php
+++ b/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
-class ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b
+class ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f
{
private static $loader;
@@ -22,15 +22,15 @@ class ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b
return self::$loader;
}
- spl_autoload_register(array('ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b', 'loadClassLoader'), true, true);
+ spl_autoload_register(array('ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
- spl_autoload_unregister(array('ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b', 'loadClassLoader'));
+ spl_autoload_unregister(array('ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require __DIR__ . '/autoload_static.php';
- call_user_func(\Composer\Autoload\ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b::getInitializer($loader));
+ call_user_func(\Composer\Autoload\ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f::getInitializer($loader));
} else {
$classMap = require __DIR__ . '/autoload_classmap.php';
if ($classMap) {
@@ -42,12 +42,12 @@ class ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b
$loader->register(true);
if ($useStaticLoader) {
- $includeFiles = Composer\Autoload\ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b::$files;
+ $includeFiles = Composer\Autoload\ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f::$files;
} else {
$includeFiles = require __DIR__ . '/autoload_files.php';
}
foreach ($includeFiles as $fileIdentifier => $file) {
- composerRequirebaf8dc6c11080cb8e64f50b2c241eb3b($fileIdentifier, $file);
+ composerRequirec291b87a1b4ce0b46a8e2f223b98b62f($fileIdentifier, $file);
}
return $loader;
@@ -59,7 +59,7 @@ class ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b
* @param string $file
* @return void
*/
-function composerRequirebaf8dc6c11080cb8e64f50b2c241eb3b($fileIdentifier, $file)
+function composerRequirec291b87a1b4ce0b46a8e2f223b98b62f($fileIdentifier, $file)
{
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index ab9da36cfa2..ec8a02bbefb 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -4,7 +4,7 @@
namespace Composer\Autoload;
-class ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b
+class ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f
{
public static $files = array (
'320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php',
@@ -2520,9 +2520,6 @@ class ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b
'Rector\\Laravel\\ValueObject\\AddArgumentDefaultValue' => __DIR__ . '/..' . '/rector/rector-laravel/src/ValueObject/AddArgumentDefaultValue.php',
'Rector\\Laravel\\ValueObject\\ServiceNameTypeAndVariableName' => __DIR__ . '/..' . '/rector/rector-laravel/src/ValueObject/ServiceNameTypeAndVariableName.php',
'Rector\\Laravel\\ValueObject\\TypeToTimeMethodAndPosition' => __DIR__ . '/..' . '/rector/rector-laravel/src/ValueObject/TypeToTimeMethodAndPosition.php',
- 'Rector\\MockeryToProphecy\\Collector\\MockVariableCollector' => __DIR__ . '/../..' . '/rules/MockeryToProphecy/Collector/MockVariableCollector.php',
- 'Rector\\MockeryToProphecy\\Rector\\ClassMethod\\MockeryCreateMockToProphizeRector' => __DIR__ . '/../..' . '/rules/MockeryToProphecy/Rector/ClassMethod/MockeryCreateMockToProphizeRector.php',
- 'Rector\\MockeryToProphecy\\Rector\\StaticCall\\MockeryCloseRemoveRector' => __DIR__ . '/../..' . '/rules/MockeryToProphecy/Rector/StaticCall/MockeryCloseRemoveRector.php',
'Rector\\MysqlToMysqli\\Rector\\Assign\\MysqlAssignToMysqliRector' => __DIR__ . '/../..' . '/rules/MysqlToMysqli/Rector/Assign/MysqlAssignToMysqliRector.php',
'Rector\\MysqlToMysqli\\Rector\\FuncCall\\MysqlFuncCallToMysqliRector' => __DIR__ . '/../..' . '/rules/MysqlToMysqli/Rector/FuncCall/MysqlFuncCallToMysqliRector.php',
'Rector\\MysqlToMysqli\\Rector\\FuncCall\\MysqlPConnectToMysqliConnectRector' => __DIR__ . '/../..' . '/rules/MysqlToMysqli/Rector/FuncCall/MysqlPConnectToMysqliConnectRector.php',
@@ -3848,9 +3845,9 @@ class ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
- $loader->prefixLengthsPsr4 = ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b::$prefixLengthsPsr4;
- $loader->prefixDirsPsr4 = ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b::$prefixDirsPsr4;
- $loader->classMap = ComposerStaticInitbaf8dc6c11080cb8e64f50b2c241eb3b::$classMap;
+ $loader->prefixLengthsPsr4 = ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f::$prefixLengthsPsr4;
+ $loader->prefixDirsPsr4 = ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f::$prefixDirsPsr4;
+ $loader->classMap = ComposerStaticInitc291b87a1b4ce0b46a8e2f223b98b62f::$classMap;
}, null, ClassLoader::class);
}
diff --git a/vendor/scoper-autoload.php b/vendor/scoper-autoload.php
index b00ff449c3a..fbfe9dc9668 100644
--- a/vendor/scoper-autoload.php
+++ b/vendor/scoper-autoload.php
@@ -9,8 +9,8 @@ $loader = require_once __DIR__.'/autoload.php';
if (!class_exists('AutoloadIncluder', false) && !interface_exists('AutoloadIncluder', false) && !trait_exists('AutoloadIncluder', false)) {
spl_autoload_call('RectorPrefix20220303\AutoloadIncluder');
}
-if (!class_exists('ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b', false) && !interface_exists('ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b', false) && !trait_exists('ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b', false)) {
- spl_autoload_call('RectorPrefix20220303\ComposerAutoloaderInitbaf8dc6c11080cb8e64f50b2c241eb3b');
+if (!class_exists('ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f', false) && !interface_exists('ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f', false) && !trait_exists('ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f', false)) {
+ spl_autoload_call('RectorPrefix20220303\ComposerAutoloaderInitc291b87a1b4ce0b46a8e2f223b98b62f');
}
if (!class_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false) && !interface_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false) && !trait_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false)) {
spl_autoload_call('RectorPrefix20220303\Helmich\TypoScriptParser\Parser\AST\Statement');
@@ -59,9 +59,9 @@ if (!function_exists('print_node')) {
return \RectorPrefix20220303\print_node(...func_get_args());
}
}
-if (!function_exists('composerRequirebaf8dc6c11080cb8e64f50b2c241eb3b')) {
- function composerRequirebaf8dc6c11080cb8e64f50b2c241eb3b() {
- return \RectorPrefix20220303\composerRequirebaf8dc6c11080cb8e64f50b2c241eb3b(...func_get_args());
+if (!function_exists('composerRequirec291b87a1b4ce0b46a8e2f223b98b62f')) {
+ function composerRequirec291b87a1b4ce0b46a8e2f223b98b62f() {
+ return \RectorPrefix20220303\composerRequirec291b87a1b4ce0b46a8e2f223b98b62f(...func_get_args());
}
}
if (!function_exists('scanPath')) {