mirror of
https://github.com/rectorphp/rector.git
synced 2024-06-07 20:00:50 +00:00
Polishing composer rules (#5170)
* [Composer] Add check for existing compsore.json * update composer package * coding style * various static fixes
This commit is contained in:
parent
96e44124cc
commit
713915d1b2
|
@ -41,15 +41,15 @@
|
|||
"symfony/dependency-injection": "^5.1",
|
||||
"symfony/finder": "^4.4.8|^5.1",
|
||||
"symfony/http-kernel": "^4.4.8|^5.1",
|
||||
"symplify/autowire-array-parameter": "^9.0.26",
|
||||
"symplify/console-color-diff": "^9.0.26",
|
||||
"symplify/package-builder": "^9.0.26",
|
||||
"symplify/rule-doc-generator": "^9.0.26",
|
||||
"symplify/set-config-resolver": "^9.0.26",
|
||||
"symplify/simple-php-doc-parser": "^9.0.26",
|
||||
"symplify/skipper": "^9.0.26",
|
||||
"symplify/smart-file-system": "^9.0.26",
|
||||
"symplify/symfony-php-config": "^9.0.26",
|
||||
"symplify/autowire-array-parameter": "^9.0.34",
|
||||
"symplify/console-color-diff": "^9.0.34",
|
||||
"symplify/package-builder": "^9.0.34",
|
||||
"symplify/rule-doc-generator": "^9.0.34",
|
||||
"symplify/set-config-resolver": "^9.0.34",
|
||||
"symplify/simple-php-doc-parser": "^9.0.34",
|
||||
"symplify/skipper": "^9.0.34",
|
||||
"symplify/smart-file-system": "^9.0.34",
|
||||
"symplify/symfony-php-config": "^9.0.34",
|
||||
"webmozart/assert": "^1.9"
|
||||
},
|
||||
"require-dev": {
|
||||
|
@ -62,12 +62,12 @@
|
|||
"phpstan/phpstan-nette": "^0.12.12",
|
||||
"phpunit/phpunit": "^9.5",
|
||||
"sebastian/diff": "^4.0.4",
|
||||
"symplify/changelog-linker": "^9.0.26",
|
||||
"symplify/coding-standard": "^9.0.26",
|
||||
"symplify/easy-coding-standard": "^9.0.26",
|
||||
"symplify/easy-testing": "^9.0.26",
|
||||
"symplify/phpstan-extensions": "^9.0.26",
|
||||
"symplify/phpstan-rules": "^9.0.26",
|
||||
"symplify/changelog-linker": "^9.0.34",
|
||||
"symplify/coding-standard": "^9.0.34",
|
||||
"symplify/easy-coding-standard": "^9.0.34",
|
||||
"symplify/easy-testing": "^9.0.34",
|
||||
"symplify/phpstan-extensions": "^9.0.34",
|
||||
"symplify/phpstan-rules": "^9.0.34",
|
||||
"tracy/tracy": "^2.7"
|
||||
},
|
||||
"replace": {
|
||||
|
|
|
@ -103,9 +103,11 @@ return static function (ContainerConfigurator $containerConfigurator): void {
|
|||
$services->set(ComposerModifier::class)
|
||||
->call('configure', [
|
||||
ValueObjectInliner::inline([
|
||||
new ChangePackageVersion('nette/nette', '^3.0'), // meta package
|
||||
// meta package
|
||||
new ChangePackageVersion('nette/nette', '^3.0'),
|
||||
// https://github.com/nette/nette/blob/v2.4.0/composer.json vs https://github.com/nette/nette/blob/v3.0.0/composer.json
|
||||
new ChangePackageVersion('nette/application', '^3.0.6'), // older versions have security issues
|
||||
// older versions have security issues
|
||||
new ChangePackageVersion('nette/application', '^3.0.6'),
|
||||
new ChangePackageVersion('nette/bootstrap', '^3.0'),
|
||||
new ChangePackageVersion('nette/caching', '^3.0'),
|
||||
new ChangePackageVersion('nette/component-model', '^3.0'),
|
||||
|
@ -133,6 +135,6 @@ return static function (ContainerConfigurator $containerConfigurator): void {
|
|||
new ChangePackageVersion('contributte/forms-multiplier', '3.1.x-dev'),
|
||||
// other packages
|
||||
new ChangePackageVersion('radekdostal/nette-datetimepicker', '^3.0'),
|
||||
])
|
||||
]),
|
||||
]);
|
||||
};
|
||||
|
|
|
@ -78,10 +78,8 @@ final class PhpDocInfoTest extends AbstractKernelTestCase
|
|||
|
||||
$this->docBlockManipulator->replaceTagByAnother($phpDocInfo->getPhpDocNode(), 'test', 'flow');
|
||||
|
||||
$this->assertStringEqualsFile(
|
||||
__DIR__ . '/Source/expected-replaced-tag.txt',
|
||||
$this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo)
|
||||
);
|
||||
$printedPhpDocInfo = $this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo);
|
||||
$this->assertStringEqualsFile(__DIR__ . '/Source/expected-replaced-tag.txt', $printedPhpDocInfo);
|
||||
}
|
||||
|
||||
private function createPhpDocInfoFromFile(string $path): PhpDocInfo
|
||||
|
|
|
@ -25,11 +25,8 @@ final class DoctrineTest extends AbstractPhpDocInfoPrinterTest
|
|||
$fileInfo = new SmartFileInfo($docFilePath);
|
||||
$relativeFilePathFromCwd = $fileInfo->getRelativeFilePathFromCwd();
|
||||
|
||||
$this->assertSame(
|
||||
$docComment,
|
||||
$this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo),
|
||||
$relativeFilePathFromCwd
|
||||
);
|
||||
$printedPhpDocInfo = $this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo);
|
||||
$this->assertSame($docComment, $printedPhpDocInfo, $relativeFilePathFromCwd);
|
||||
}
|
||||
|
||||
public function provideDataClass(): Iterator
|
||||
|
|
|
@ -36,11 +36,8 @@ final class MultilineTest extends AbstractPhpDocInfoPrinterTest
|
|||
$fileInfo = new SmartFileInfo($docFilePath);
|
||||
$relativeFilePathFromCwd = $fileInfo->getRelativeFilePathFromCwd();
|
||||
|
||||
$this->assertSame(
|
||||
$docComment,
|
||||
$this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo),
|
||||
$relativeFilePathFromCwd
|
||||
);
|
||||
$printedPhpDocInfo = $this->phpDocInfoPrinter->printFormatPreserving($phpDocInfo);
|
||||
$this->assertSame($docComment, $printedPhpDocInfo, $relativeFilePathFromCwd);
|
||||
}
|
||||
|
||||
public function provideData(): Iterator
|
||||
|
|
|
@ -38,7 +38,8 @@ final class TypeNodeAnalyzerTest extends AbstractKernelTestCase
|
|||
*/
|
||||
public function testContainsArrayType(TypeNode $typeNode, bool $expectedContains): void
|
||||
{
|
||||
$this->assertSame($expectedContains, $this->typeNodeAnalyzer->containsArrayType($typeNode));
|
||||
$containsArrayType = $this->typeNodeAnalyzer->containsArrayType($typeNode);
|
||||
$this->assertSame($expectedContains, $containsArrayType);
|
||||
}
|
||||
|
||||
public function provideDataForArrayType(): Iterator
|
||||
|
@ -55,7 +56,8 @@ final class TypeNodeAnalyzerTest extends AbstractKernelTestCase
|
|||
*/
|
||||
public function testIsIntersectionAndNotNullable(TypeNode $typeNode, bool $expectedIs): void
|
||||
{
|
||||
$this->assertSame($expectedIs, $this->typeNodeAnalyzer->isIntersectionAndNotNullable($typeNode));
|
||||
$isIntersection = $this->typeNodeAnalyzer->isIntersectionAndNotNullable($typeNode);
|
||||
$this->assertSame($expectedIs, $isIntersection);
|
||||
}
|
||||
|
||||
public function provideDataForIntersectionAndNotNullable(): Iterator
|
||||
|
|
|
@ -29,7 +29,8 @@ final class ClassTypeResolverTest extends AbstractNodeTypeResolverTest
|
|||
{
|
||||
$variableNodes = $this->getNodesForFileOfType($file, Class_::class);
|
||||
|
||||
$this->assertEquals($expectedType, $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]));
|
||||
$resolvedType = $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]);
|
||||
$this->assertEquals($expectedType, $resolvedType);
|
||||
}
|
||||
|
||||
public function dataProvider(): Iterator
|
||||
|
|
|
@ -24,7 +24,8 @@ final class InterfaceTypeResolverTest extends AbstractNodeTypeResolverTest
|
|||
{
|
||||
$variableNodes = $this->getNodesForFileOfType($file, Interface_::class);
|
||||
|
||||
$this->assertEquals($expectedType, $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]));
|
||||
$resolvedType = $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]);
|
||||
$this->assertEquals($expectedType, $resolvedType);
|
||||
}
|
||||
|
||||
public function dataProvider(): Iterator
|
||||
|
|
|
@ -23,7 +23,8 @@ final class NameTypeResolverTest extends AbstractNodeTypeResolverTest
|
|||
{
|
||||
$nameNodes = $this->getNodesForFileOfType($file, Name::class);
|
||||
|
||||
$this->assertEquals($expectedType, $this->nodeTypeResolver->resolve($nameNodes[$nodePosition]));
|
||||
$resolvedType = $this->nodeTypeResolver->resolve($nameNodes[$nodePosition]);
|
||||
$this->assertEquals($expectedType, $resolvedType);
|
||||
}
|
||||
|
||||
public function provideData(): Iterator
|
||||
|
|
|
@ -24,7 +24,8 @@ final class TraitTypeResolverTest extends AbstractNodeTypeResolverTest
|
|||
{
|
||||
$variableNodes = $this->getNodesForFileOfType($file, Trait_::class);
|
||||
|
||||
$this->assertEquals($expectedType, $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]));
|
||||
$resolvedType = $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]);
|
||||
$this->assertEquals($expectedType, $resolvedType);
|
||||
}
|
||||
|
||||
public function provideData(): Iterator
|
||||
|
|
|
@ -26,7 +26,8 @@ final class VariableTypeResolverTest extends AbstractNodeTypeResolverTest
|
|||
{
|
||||
$variableNodes = $this->getNodesForFileOfType($file, Variable::class);
|
||||
|
||||
$this->assertEquals($expectedType, $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]));
|
||||
$resolvedType = $this->nodeTypeResolver->resolve($variableNodes[$nodePosition]);
|
||||
$this->assertEquals($expectedType, $resolvedType);
|
||||
}
|
||||
|
||||
public function provideData(): Iterator
|
||||
|
|
41
phpstan.neon
41
phpstan.neon
|
@ -625,3 +625,44 @@ parameters:
|
|||
- '#Method Rector\\SymfonyCodeQuality\\NodeFactory\\RouteNameClassFactory\:\:create\(\) should return PhpParser\\Node\\Stmt\\Namespace_ but returns PhpParser\\Node#'
|
||||
- '#Content of method "mapToPhpParserNode\(\)" is duplicated with method in "Rector\\PHPStanStaticTypeMapper\\TypeMapper\\CallableTypeMapper" class\. Use unique content or abstract service instead#'
|
||||
- '#Parameter \#4 \$classWithConstants of class Rector\\Privatization\\ValueObject\\ReplaceStringWithClassConstant constructor expects class\-string, string given#'
|
||||
|
||||
# resolve later - clean duplicated code
|
||||
- '#Content of method "resolveClass\(\)" is duplicated with method "resolveClassName\(\)" in "Rector\\NetteToSymfony\\Analyzer\\NetteControlFactoryInterfaceAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "collectMockVariableName\(\)" is duplicated with method "collectMockVariableName\(\)" in "Rector\\MockistaToMockery\\Rector\\ClassMethod\\MockistaMockToMockeryMockRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "shouldSkipMethodCallIncludingNew\(\)" is duplicated with method "shouldSkipMethodCallIncludingNew\(\)" in "Rector\\Defluent\\Rector\\AbstractFluentChainMethodCallRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "mapToPhpParserNode\(\)" is duplicated with method "mapToPhpParserNode\(\)" in "Rector\\PHPStanStaticTypeMapper\\TypeMapper\\ClosureTypeMapper" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "getFqnClassName\(\)" is duplicated with method "getFullyQualifiedName\(\)" in "Rector\\TypeDeclaration\\Rector\\FunctionLike\\ParamTypeDeclarationRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "resolveMethodCallVar\(\)" is duplicated with method "resolveMethodCallVar\(\)" in "Rector\\Defluent\\NodeFactory\\SeparateReturnMethodCallFactory" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "getFullyQualifiedName\(\)" is duplicated with method "resolveClassName\(\)" in "Rector\\NetteToSymfony\\Analyzer\\NetteControlFactoryInterfaceAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "endsWith\(\)" is duplicated with method "endsWith\(\)" in "Rector\\Naming\\ExpectedNameResolver\\AbstractExpectedNameResolver" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "convertParamsToArgs\(\)" is duplicated with method "convertParamNodesToArgNodes\(\)" in "Rector\\Core\\PhpParser\\Node\\NodeFactory" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "resolveForParam\(\)" is duplicated with method "resolve\(\)" in "Rector\\Naming\\ExpectedNameResolver\\MatchParamTypeExpectedNameResolver" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isInTestClass\(\)" is duplicated with method "isInTestClass\(\)" in "Rector\\Core\\Rector\\AbstractPHPUnitRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "getFqnClassName\(\)" is duplicated with method "resolveClassName\(\)" in "Rector\\NetteToSymfony\\Analyzer\\NetteControlFactoryInterfaceAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "shouldSkipMethodCallIncludingNew\(\)" is duplicated with method "shouldSkipMethodCallIncludingNew\(\)" in "Rector\\Defluent\\Rector\\Return_\\ReturnFluentChainMethodCallToNormalMethodCallRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "endsWith\(\)" is duplicated with method "endsWith\(\)" in "Rector\\Naming\\Naming\\ExpectedNameResolver" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "resolve\(\)" is duplicated with method "resolveForParam\(\)" in "Rector\\Naming\\Naming\\ExpectedNameResolver" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "refactor\(\)" is duplicated with method "refactor\(\)" in "Rector\\Nette\\Rector\\FuncCall\\PregFunctionToNetteUtilsStringsRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isTypes\(\)" is duplicated with method "isTypes\(\)" in "Rector\\Core\\Context\\ContextAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "removeFirstArgument\(\)" is duplicated with method "moveArguments\(\)" in "Rector\\PHPUnit\\Rector\\MethodCall\\AssertSameBoolNullToSpecificMethodRector" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isInstancesOf\(\)" is duplicated with method "isTypes\(\)" in "Rector\\Core\\Context\\ContextAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "getFullyQualifiedName\(\)" is duplicated with method "getClassName\(\)" in "Rector\\Naming\\Naming\\PropertyNaming" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "(.*?)Trait\(\)" is duplicated with method "autowireNameResolverTrait\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isLocalMethodCallNamed\(\)" is duplicated with method "isLocalMethodCallNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isLocalMethodCallsNamed\(\)" is duplicated with method "isLocalMethodCallsNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isFuncCallName\(\)" is duplicated with method "isFuncCallName\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isClassConstReference\(\)" is duplicated with method "isClassConstReference\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isStaticCallNamed\(\)" is duplicated with method "isStaticCallNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isStaticCallsNamed\(\)" is duplicated with method "isStaticCallsNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isMethodCall\(\)" is duplicated with method "isMethodCall\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isVariableName\(\)" is duplicated with method "isVariableName\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isInClassNamed\(\)" is duplicated with method "isInClassNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "isInClassesNamed\(\)" is duplicated with method "isInClassesNamed\(\)" in "Rector\\Core\\Rector\\AbstractRector\\NameResolverTrait" class\. Use unique content or abstract service instead#'
|
||||
- '#Content of method "getClassName\(\)" is duplicated with method "resolveClassName\(\)" in "Rector\\NetteToSymfony\\Analyzer\\NetteControlFactoryInterfaceAnalyzer" class\. Use unique content or abstract service instead#'
|
||||
|
||||
-
|
||||
message: '#Do not use setter on a service#'
|
||||
paths:
|
||||
- rules/composer/src/Modifier/ComposerModifier.php
|
||||
|
||||
|
||||
|
|
|
@ -13,13 +13,19 @@ use Webmozart\Assert\Assert;
|
|||
*/
|
||||
final class ComposerModifier
|
||||
{
|
||||
/** @var string|null */
|
||||
/**
|
||||
* @var string|null
|
||||
*/
|
||||
private $filePath;
|
||||
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $command = 'composer update';
|
||||
|
||||
/** @var ComposerModifierInterface[] */
|
||||
/**
|
||||
* @var ComposerModifierInterface[]
|
||||
*/
|
||||
private $configuration = [];
|
||||
|
||||
/**
|
||||
|
@ -40,7 +46,7 @@ final class ComposerModifier
|
|||
$this->configuration = $configuration;
|
||||
}
|
||||
|
||||
public function filePath(string $filePath): void
|
||||
public function setFilePath(string $filePath): void
|
||||
{
|
||||
$this->filePath = $filePath;
|
||||
}
|
||||
|
@ -50,7 +56,7 @@ final class ComposerModifier
|
|||
return $this->filePath ?: getcwd() . '/composer.json';
|
||||
}
|
||||
|
||||
public function command(string $command): void
|
||||
public function setCommand(string $command): void
|
||||
{
|
||||
$this->command = $command;
|
||||
}
|
||||
|
|
|
@ -14,10 +14,14 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class AddPackageToRequire implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/** @var Version */
|
||||
/**
|
||||
* @var Version
|
||||
*/
|
||||
private $version;
|
||||
|
||||
/**
|
||||
|
|
|
@ -14,10 +14,14 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class AddPackageToRequireDev implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/** @var Version */
|
||||
/**
|
||||
* @var Version
|
||||
*/
|
||||
private $version;
|
||||
|
||||
/**
|
||||
|
|
|
@ -14,10 +14,14 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class ChangePackageVersion implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/** @var Version */
|
||||
/**
|
||||
* @var Version
|
||||
*/
|
||||
private $targetVersion;
|
||||
|
||||
/**
|
||||
|
|
|
@ -13,7 +13,9 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class MovePackageToRequire implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/**
|
||||
|
|
|
@ -13,7 +13,9 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class MovePackageToRequireDev implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/**
|
||||
|
|
|
@ -13,7 +13,9 @@ use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
|||
*/
|
||||
final class RemovePackage implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $packageName;
|
||||
|
||||
/**
|
||||
|
|
|
@ -15,13 +15,19 @@ use Webmozart\Assert\Assert;
|
|||
*/
|
||||
final class ReplacePackage implements ComposerModifierInterface
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $oldPackageName;
|
||||
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $newPackageName;
|
||||
|
||||
/** @var Version */
|
||||
/**
|
||||
* @var Version
|
||||
*/
|
||||
private $targetVersion;
|
||||
|
||||
/**
|
||||
|
@ -31,7 +37,11 @@ final class ReplacePackage implements ComposerModifierInterface
|
|||
*/
|
||||
public function __construct(string $oldPackageName, string $newPackageName, string $targetVersion)
|
||||
{
|
||||
Assert::notSame($oldPackageName, $newPackageName, '$oldPackageName cannot be the same as $newPackageName. If you want to change version of package, use ' . ChangePackageVersion::class);
|
||||
Assert::notSame(
|
||||
$oldPackageName,
|
||||
$newPackageName,
|
||||
'$oldPackageName cannot be the same as $newPackageName. If you want to change version of package, use ' . ChangePackageVersion::class
|
||||
);
|
||||
|
||||
$this->oldPackageName = $oldPackageName;
|
||||
$this->newPackageName = $newPackageName;
|
||||
|
|
|
@ -1,18 +1,20 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\ValueObject\Version;
|
||||
|
||||
use Composer\Semver\VersionParser;
|
||||
use UnexpectedValueException;
|
||||
|
||||
final class Version
|
||||
{
|
||||
/** @var string */
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $version;
|
||||
|
||||
/**
|
||||
* @param string $version version string
|
||||
* @throws UnexpectedValueException if $version string is not valid
|
||||
*/
|
||||
public function __construct(string $version)
|
||||
{
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\Modifier;
|
||||
|
||||
use Nette\Utils\Json;
|
||||
use Rector\Composer\Modifier\ComposerModifier;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\AddPackageToRequire;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\ReplacePackage;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\ChangePackageVersion;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\MovePackageToRequireDev;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\RemovePackage;
|
||||
use Rector\Composer\Modifier\ComposerModifier;
|
||||
use Rector\Composer\ValueObject\ComposerModifier\ReplacePackage;
|
||||
use Rector\Core\HttpKernel\RectorKernel;
|
||||
use Symplify\ComposerJsonManipulator\ValueObject\ComposerJson;
|
||||
use Symplify\PackageBuilder\Testing\AbstractKernelTestCase;
|
||||
|
@ -24,9 +25,7 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
{
|
||||
/** @var ComposerModifier $composerModifier */
|
||||
$composerModifier = $this->getService(ComposerModifier::class);
|
||||
$composerModifier->configure([
|
||||
new AddPackageToRequire('vendor1/package3', '^3.0'),
|
||||
]);
|
||||
$composerModifier->configure([new AddPackageToRequire('vendor1/package3', '^3.0')]);
|
||||
|
||||
$composerJson = new ComposerJson();
|
||||
$composerJson->setRequire([
|
||||
|
@ -34,13 +33,14 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithOneAddedAndOneRemovedPackage(): void
|
||||
|
@ -58,12 +58,13 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package2' => '^2.0',
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithAddedAndRemovedSamePackage(): void
|
||||
|
@ -81,12 +82,13 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithRemovedAndAddedBackSamePackage(): void
|
||||
|
@ -104,13 +106,14 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithMovedAndChangedPackages(): void
|
||||
|
@ -130,30 +133,25 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package3' => '~3.0.0',
|
||||
'vendor2/package1' => '^3.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithMultipleConfiguration(): void
|
||||
{
|
||||
/** @var ComposerModifier $composerModifier */
|
||||
$composerModifier = $this->getService(ComposerModifier::class);
|
||||
$composerModifier->configure([
|
||||
new MovePackageToRequireDev('vendor1/package1'),
|
||||
]);
|
||||
$composerModifier->configure([
|
||||
new ReplacePackage('vendor1/package2', 'vendor2/package1', '^3.0'),
|
||||
]);
|
||||
$composerModifier->configure([
|
||||
new ChangePackageVersion('vendor1/package3', '~3.0.0'),
|
||||
]);
|
||||
$composerModifier->configure([new MovePackageToRequireDev('vendor1/package1')]);
|
||||
$composerModifier->configure([new ReplacePackage('vendor1/package2', 'vendor2/package1', '^3.0')]);
|
||||
$composerModifier->configure([new ChangePackageVersion('vendor1/package3', '~3.0.0')]);
|
||||
|
||||
$composerJson = new ComposerJson();
|
||||
$composerJson->setRequire([
|
||||
|
@ -162,30 +160,25 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package3' => '~3.0.0',
|
||||
'vendor2/package1' => '^3.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithConfigurationAndReconfigurationAndConfiguration(): void
|
||||
{
|
||||
/** @var ComposerModifier $composerModifier */
|
||||
$composerModifier = $this->getService(ComposerModifier::class);
|
||||
$composerModifier->configure([
|
||||
new MovePackageToRequireDev('vendor1/package1'),
|
||||
]);
|
||||
$composerModifier->reconfigure([
|
||||
new ReplacePackage('vendor1/package2', 'vendor2/package1', '^3.0'),
|
||||
]);
|
||||
$composerModifier->configure([
|
||||
new ChangePackageVersion('vendor1/package3', '~3.0.0'),
|
||||
]);
|
||||
$composerModifier->configure([new MovePackageToRequireDev('vendor1/package1')]);
|
||||
$composerModifier->reconfigure([new ReplacePackage('vendor1/package2', 'vendor2/package1', '^3.0')]);
|
||||
$composerModifier->configure([new ChangePackageVersion('vendor1/package3', '~3.0.0')]);
|
||||
|
||||
$composerJson = new ComposerJson();
|
||||
$composerJson->setRequire([
|
||||
|
@ -194,13 +187,14 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package3' => '~3.0.0',
|
||||
'vendor2/package1' => '^3.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRefactorWithMovedAndChangedPackagesWithSortPackages(): void
|
||||
|
@ -215,7 +209,7 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
|
||||
$composerJson = new ComposerJson();
|
||||
$composerJson->setConfig([
|
||||
'sort-packages' => true
|
||||
'sort-packages' => true,
|
||||
]);
|
||||
$composerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
|
@ -223,37 +217,38 @@ final class ComposerModifierTest extends AbstractKernelTestCase
|
|||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setConfig([
|
||||
'sort-packages' => true
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setConfig([
|
||||
'sort-packages' => true,
|
||||
]);
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package0' => '^3.0',
|
||||
'vendor1/package3' => '~3.0.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$this->assertEquals($changedComposerJson, $composerModifier->modify($composerJson));
|
||||
$composerModifier->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testFilePath(): void
|
||||
{
|
||||
/** @var ComposerModifier $composerModifier */
|
||||
$composerModifier = $this->getService(ComposerModifier::class);
|
||||
$this->assertEquals(getcwd() . '/composer.json', $composerModifier->getFilePath());
|
||||
$this->assertSame(getcwd() . '/composer.json', $composerModifier->getFilePath());
|
||||
|
||||
$composerModifier->filePath('test/composer.json');
|
||||
$this->assertEquals('test/composer.json', $composerModifier->getFilePath());
|
||||
$composerModifier->setFilePath('test/composer.json');
|
||||
$this->assertSame('test/composer.json', $composerModifier->getFilePath());
|
||||
}
|
||||
|
||||
public function testCommand(): void
|
||||
{
|
||||
/** @var ComposerModifier $composerModifier */
|
||||
$composerModifier = $this->getService(ComposerModifier::class);
|
||||
$this->assertEquals('composer update', $composerModifier->getCommand());
|
||||
$this->assertSame('composer update', $composerModifier->getCommand());
|
||||
|
||||
$composerModifier->command('composer update --prefer-stable');
|
||||
$this->assertEquals('composer update --prefer-stable', $composerModifier->getCommand());
|
||||
$composerModifier->setCommand('composer update --prefer-stable');
|
||||
$this->assertSame('composer update --prefer-stable', $composerModifier->getCommand());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,17 +18,19 @@ final class AddPackageToRequireDevTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequireDev = new AddPackageToRequireDev('vendor1/package3', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequireDev->modify($composerJson));
|
||||
$addPackageToRequireDev->modify($composerJson);
|
||||
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testAddExistingPackage(): void
|
||||
|
@ -37,14 +41,16 @@ final class AddPackageToRequireDevTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequireDev = new AddPackageToRequireDev('vendor1/package1', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequireDev->modify($composerJson));
|
||||
$addPackageToRequireDev->modify($composerJson);
|
||||
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $expectedComposerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testAddExistingDevPackage(): void
|
||||
|
@ -57,15 +63,17 @@ final class AddPackageToRequireDevTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequireDev = new AddPackageToRequireDev('vendor1/package2', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequireDev->modify($composerJson));
|
||||
$addPackageToRequireDev->modify($composerJson);
|
||||
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,15 +18,16 @@ final class AddPackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequire = new AddPackageToRequire('vendor1/package3', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequire->modify($composerJson));
|
||||
$addPackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testAddExistingPackage(): void
|
||||
|
@ -35,14 +38,15 @@ final class AddPackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequire = new AddPackageToRequire('vendor1/package1', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequire->modify($composerJson));
|
||||
$addPackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testAddExistingDevPackage(): void
|
||||
|
@ -55,15 +59,16 @@ final class AddPackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$addPackageToRequire = new AddPackageToRequire('vendor1/package2', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $addPackageToRequire->modify($composerJson));
|
||||
$addPackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,14 +18,15 @@ final class ChangePackageVersionTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changePackageVersion = new ChangePackageVersion('vendor1/package3', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $changePackageVersion->modify($composerJson));
|
||||
$changePackageVersion->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testChangeVersionExistingPackage(): void
|
||||
|
@ -34,14 +37,15 @@ final class ChangePackageVersionTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^3.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changePackageVersion = new ChangePackageVersion('vendor1/package1', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $changePackageVersion->modify($composerJson));
|
||||
$changePackageVersion->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testChangeVersionExistingDevPackage(): void
|
||||
|
@ -54,15 +58,17 @@ final class ChangePackageVersionTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^3.0',
|
||||
]);
|
||||
|
||||
$changePackageVersion = new ChangePackageVersion('vendor1/package2', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $changePackageVersion->modify($composerJson));
|
||||
$changePackageVersion->modify($composerJson);
|
||||
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,34 +18,36 @@ final class MovePackageToRequireDevTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequireDev = new MovePackageToRequireDev('vendor1/package3');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequireDev->modify($composerJson));
|
||||
$movePackageToRequireDev->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testMoveExistingPackage(): void
|
||||
{
|
||||
$composerJson = new ComposerJson();
|
||||
$composerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequireDev = new MovePackageToRequireDev('vendor1/package1');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequireDev->modify($composerJson));
|
||||
$movePackageToRequireDev->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testMoveExistingDevPackage(): void
|
||||
|
@ -56,15 +60,16 @@ final class MovePackageToRequireDevTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequireDev = new MovePackageToRequireDev('vendor1/package2');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequireDev->modify($composerJson));
|
||||
$movePackageToRequireDev->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,14 +18,15 @@ final class MovePackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequire = new MovePackageToRequire('vendor1/package3');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequire->modify($composerJson));
|
||||
$movePackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testMoveExistingDevPackage(): void
|
||||
|
@ -34,16 +37,17 @@ final class MovePackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequire = new MovePackageToRequire('vendor1/package1');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequire->modify($composerJson));
|
||||
$movePackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testMoveExistingPackage(): void
|
||||
|
@ -56,15 +60,16 @@ final class MovePackageToRequireTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$movePackageToRequire = new MovePackageToRequire('vendor1/package1');
|
||||
$this->assertEquals($changedComposerJson, $movePackageToRequire->modify($composerJson));
|
||||
$movePackageToRequire->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -16,14 +18,15 @@ final class RemovePackageTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$removePackage = new RemovePackage('vendor1/package3');
|
||||
$this->assertEquals($changedComposerJson, $removePackage->modify($composerJson));
|
||||
$removePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRemoveExistingPackage(): void
|
||||
|
@ -34,13 +37,14 @@ final class RemovePackageTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$removePackage = new RemovePackage('vendor1/package1');
|
||||
$this->assertEquals($changedComposerJson, $removePackage->modify($composerJson));
|
||||
$removePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testRemoveExistingDevPackage(): void
|
||||
|
@ -53,12 +57,13 @@ final class RemovePackageTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
|
||||
$removePackage = new RemovePackage('vendor1/package2');
|
||||
$this->assertEquals($changedComposerJson, $removePackage->modify($composerJson));
|
||||
$removePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\ValueObject\ComposerModifier;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -15,15 +17,15 @@ final class ReplacePackageTest extends TestCase
|
|||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
|
||||
]);
|
||||
|
||||
$replacePackage = new ReplacePackage('vendor1/package3', 'vendor1/package4', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $replacePackage->modify($composerJson));
|
||||
$replacePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testReplaceExistingPackage(): void
|
||||
|
@ -34,14 +36,15 @@ final class ReplacePackageTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package3' => '^3.0',
|
||||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$replacePackage = new ReplacePackage('vendor1/package1', 'vendor1/package3', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $replacePackage->modify($composerJson));
|
||||
$replacePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
|
||||
public function testReplaceExistingDevPackage(): void
|
||||
|
@ -54,15 +57,16 @@ final class ReplacePackageTest extends TestCase
|
|||
'vendor1/package2' => '^2.0',
|
||||
]);
|
||||
|
||||
$changedComposerJson = new ComposerJson();
|
||||
$changedComposerJson->setRequire([
|
||||
$expectedComposerJson = new ComposerJson();
|
||||
$expectedComposerJson->setRequire([
|
||||
'vendor1/package1' => '^1.0',
|
||||
]);
|
||||
$changedComposerJson->setRequireDev([
|
||||
'vendor1/package3' => '^3.0',
|
||||
$expectedComposerJson->setRequireDev([
|
||||
'vendor1/package3' => '^3.0',
|
||||
]);
|
||||
|
||||
$replacePackage = new ReplacePackage('vendor1/package2', 'vendor1/package3', '^3.0');
|
||||
$this->assertEquals($changedComposerJson, $replacePackage->modify($composerJson));
|
||||
$replacePackage->modify($composerJson);
|
||||
$this->assertSame($expectedComposerJson->getJsonArray(), $composerJson->getJsonArray());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Composer\Tests\Version;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
@ -12,28 +14,28 @@ final class VersionTest extends TestCase
|
|||
{
|
||||
$version = new Version('1.2.3');
|
||||
$this->assertInstanceOf(Version::class, $version);
|
||||
$this->assertEquals('1.2.3', $version->getVersion());
|
||||
$this->assertSame('1.2.3', $version->getVersion());
|
||||
}
|
||||
|
||||
public function testTildeVersion(): void
|
||||
{
|
||||
$version = new Version('~1.2.3');
|
||||
$this->assertInstanceOf(Version::class, $version);
|
||||
$this->assertEquals('~1.2.3', $version->getVersion());
|
||||
$this->assertSame('~1.2.3', $version->getVersion());
|
||||
}
|
||||
|
||||
public function testCaretVersion(): void
|
||||
{
|
||||
$version = new Version('^1.2.3');
|
||||
$this->assertInstanceOf(Version::class, $version);
|
||||
$this->assertEquals('^1.2.3', $version->getVersion());
|
||||
$this->assertSame('^1.2.3', $version->getVersion());
|
||||
}
|
||||
|
||||
public function testDevMasterAsVersion(): void
|
||||
{
|
||||
$version = new Version('dev-master as 1.2.3');
|
||||
$this->assertInstanceOf(Version::class, $version);
|
||||
$this->assertEquals('dev-master as 1.2.3', $version->getVersion());
|
||||
$this->assertSame('dev-master as 1.2.3', $version->getVersion());
|
||||
}
|
||||
|
||||
public function testWrongAliasVersion(): void
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\DoctrineCodeQuality\NodeManipulator;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Doctrine\Tests\Rector\Class_\AddEntityIdByConditionRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Generic\Tests\Rector\ClassConstFetch\RenameClassConstantsUseToStringsRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Generic\Tests\Rector\Class_\AddInterfaceByTraitRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Generic\Tests\Rector\Class_\AddInterfaceByTraitRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Generic\Tests\Rector\Expression\MethodCallToReturnRector\Source;
|
||||
|
||||
|
|
|
@ -91,18 +91,11 @@ final class StmtOrderTest extends AbstractKernelTestCase
|
|||
$classLike = $this->stmtOrder->reorderClassStmtsByOldToNewKeys($class, self::OLD_TO_NEW_KEYS);
|
||||
$expectedClass = $this->getExpectedClassNode();
|
||||
|
||||
$this->assertSame(
|
||||
$this->nodeNameResolver->getName($expectedClass->stmts[0]),
|
||||
$this->nodeNameResolver->getName($classLike->stmts[0])
|
||||
);
|
||||
$this->assertSame(
|
||||
$this->nodeNameResolver->getName($expectedClass->stmts[1]),
|
||||
$this->nodeNameResolver->getName($classLike->stmts[1])
|
||||
);
|
||||
$this->assertSame(
|
||||
$this->nodeNameResolver->getName($expectedClass->stmts[2]),
|
||||
$this->nodeNameResolver->getName($classLike->stmts[2])
|
||||
);
|
||||
$this->assertTrue($this->nodeNameResolver->areNamesEqual($expectedClass->stmts[0], $classLike->stmts[0]));
|
||||
|
||||
$this->assertTrue($this->nodeNameResolver->areNamesEqual($expectedClass->stmts[1], $classLike->stmts[1]));
|
||||
|
||||
$this->assertTrue($this->nodeNameResolver->areNamesEqual($expectedClass->stmts[2], $classLike->stmts[2]));
|
||||
}
|
||||
|
||||
private function getTestClassNode(): Class_
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\PHPUnit\Tests\Rector\ClassMethod\AddDoesNotPerformAssertionToNonAssertingTestRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\PHPUnit\Tests\Rector\ClassMethod\AddDoesNotPerformAssertionToNonAssertingTestRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\PHPUnit\Tests\Rector\Class_\SelfContainerGetMethodCallFromTestToInjectPropertyRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\PHPUnit\Tests\Rector\Class_\SelfContainerGetMethodCallFromTestToInjectPropertyRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Renaming\Tests\Rector\Name\RenameClassRector\Source\FirstNamespace;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Renaming\Tests\Rector\Name\RenameClassRector\Source\SecondNamespace;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\Renaming\Tests\Rector\Name\RenameClassRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\TypeDeclaration\Tests\Rector\FunctionLike\ReturnTypeDeclarationRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Rector\TypeDeclaration\Tests\Rector\Property\CompleteVarDocTypePropertyRector\Source;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Mapping\Annotation;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Timestampable\Traits;
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Gedmo\Translatable;
|
||||
|
||||
|
|
|
@ -28,12 +28,13 @@ final class ValueResolverTest extends AbstractKernelTestCase
|
|||
}
|
||||
|
||||
/**
|
||||
* @param mixed $expected
|
||||
* @param mixed $expectedValue
|
||||
* @dataProvider dataProvider
|
||||
*/
|
||||
public function test($expected, Expr $expr): void
|
||||
public function test(Expr $expr, $expectedValue): void
|
||||
{
|
||||
$this->assertSame($expected, $this->valueResolver->getValue($expr));
|
||||
$resolvedValue = $this->valueResolver->getValue($expr);
|
||||
$this->assertSame($expectedValue, $resolvedValue);
|
||||
}
|
||||
|
||||
public function dataProvider(): Iterator
|
||||
|
@ -46,12 +47,12 @@ final class ValueResolverTest extends AbstractKernelTestCase
|
|||
new FullyQualified('SomeClassResolveName')
|
||||
);
|
||||
|
||||
yield ['SomeClassResolveName::SOME_CONSTANT', $classConstFetchNode];
|
||||
yield [true, $builderFactory->val(true)];
|
||||
yield [1, $builderFactory->val(1)];
|
||||
yield [1.0, $builderFactory->val(1.0)];
|
||||
yield [null, $builderFactory->var('foo')];
|
||||
yield [2, new Plus($builderFactory->val(1), $builderFactory->val(1))];
|
||||
yield [null, new Plus($builderFactory->val(1), $builderFactory->var('foo'))];
|
||||
yield [$classConstFetchNode, 'SomeClassResolveName::SOME_CONSTANT'];
|
||||
yield [$builderFactory->val(true), true];
|
||||
yield [$builderFactory->val(1), 1];
|
||||
yield [$builderFactory->val(1.0), 1.0];
|
||||
yield [$builderFactory->var('foo'), null];
|
||||
yield [new Plus($builderFactory->val(1), $builderFactory->val(1)), 2];
|
||||
yield [new Plus($builderFactory->val(1), $builderFactory->var('foo')), null];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php declare(strict_types=1);
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Symplify\SmartFileSystem\FileSystemFilter;
|
||||
use Symplify\SmartFileSystem\Finder\FinderSanitizer;
|
||||
|
|
Loading…
Reference in New Issue
Block a user