Skip to content

Commit

Permalink
Fix all newly discovered RiskyTruthyFalsyComparison psalm issues
Browse files Browse the repository at this point in the history
Signed-off-by: George Steel <[email protected]>
  • Loading branch information
gsteel committed Sep 9, 2024
1 parent f910da3 commit 9b500eb
Show file tree
Hide file tree
Showing 6 changed files with 73 additions and 76 deletions.
127 changes: 62 additions & 65 deletions psalm-baseline.xml
Original file line number Diff line number Diff line change
@@ -1,120 +1,120 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="5.17.0@c620f6e80d0abfca532b00bda366062aaedf6e5d">
<files psalm-version="5.26.1@d747f6500b38ac4f7dfc5edbcae6e4b637d7add0">
<file src="src/ConfigProvider.php">
<UndefinedClass>
<code>Twig_Environment</code>
<code><![CDATA[Twig_Environment]]></code>
</UndefinedClass>
</file>
<file src="src/TwigEnvironmentFactory.php">
<InternalClass>
<code>OptimizerNodeVisitor::OPTIMIZE_ALL</code>
<code><![CDATA[OptimizerNodeVisitor::OPTIMIZE_ALL]]></code>
</InternalClass>
<MixedArgument>
<code><![CDATA[$container->get(TwigExtension::class)]]></code>
<code>$extension</code>
<code>$path</code>
<code>$runtimeLoader</code>
<code><![CDATA[$extension]]></code>
<code><![CDATA[$path]]></code>
<code><![CDATA[$runtimeLoader]]></code>
</MixedArgument>
<MixedAssignment>
<code>$extension</code>
<code>$extension</code>
<code>$path</code>
<code>$paths</code>
<code>$runtimeLoader</code>
<code>$runtimeLoader</code>
<code><![CDATA[$extension]]></code>
<code><![CDATA[$extension]]></code>
<code><![CDATA[$path]]></code>
<code><![CDATA[$paths]]></code>
<code><![CDATA[$runtimeLoader]]></code>
<code><![CDATA[$runtimeLoader]]></code>
</MixedAssignment>
<PossiblyInvalidArgument>
<code>$timezone</code>
<code><![CDATA[$timezone]]></code>
</PossiblyInvalidArgument>
</file>
<file src="src/TwigExtension.php">
<ArgumentTypeCoercion>
<code>$route</code>
<code><![CDATA[$route]]></code>
</ArgumentTypeCoercion>
<MixedArgumentTypeCoercion>
<code>$options</code>
<code>$queryParams</code>
<code>$routeParams</code>
<code><![CDATA[$options]]></code>
<code><![CDATA[$queryParams]]></code>
<code><![CDATA[$routeParams]]></code>
</MixedArgumentTypeCoercion>
<MixedReturnTypeCoercion>
<code><![CDATA[$this->globals]]></code>
<code>array</code>
<code><![CDATA[array]]></code>
</MixedReturnTypeCoercion>
<PossiblyNullOperand>
<code><![CDATA[$this->assetsUrl]]></code>
</PossiblyNullOperand>
</file>
<file src="src/TwigExtensionFactory.php">
<MixedArgument>
<code>$config</code>
<code><![CDATA[$config]]></code>
<code><![CDATA[$config['assets_url'] ?? '']]></code>
<code><![CDATA[$config['assets_version'] ?? '']]></code>
<code><![CDATA[$config['globals'] ?? []]]></code>
<code><![CDATA[$container->get($serverUrlHelper)]]></code>
<code><![CDATA[$container->get($urlHelper)]]></code>
</MixedArgument>
<MixedAssignment>
<code>$config</code>
<code><![CDATA[$config]]></code>
</MixedAssignment>
</file>
<file src="src/TwigRenderer.php">
<MixedArgument>
<code>$name</code>
<code>$namespace</code>
<code>$path</code>
<code><![CDATA[$name]]></code>
<code><![CDATA[$namespace]]></code>
<code><![CDATA[$path]]></code>
</MixedArgument>
<MixedAssignment>
<code>$name</code>
<code>$namespace</code>
<code>$path</code>
<code><![CDATA[$name]]></code>
<code><![CDATA[$namespace]]></code>
<code><![CDATA[$path]]></code>
</MixedAssignment>
<PropertyTypeCoercion>
<code>$loader</code>
<code><![CDATA[$loader]]></code>
</PropertyTypeCoercion>
<RedundantCondition>
<code>is_string($suffix)</code>
<code><![CDATA[is_string($suffix)]]></code>
</RedundantCondition>
<TypeDoesNotContainType>
<code><![CDATA['html']]></code>
</TypeDoesNotContainType>
</file>
<file src="src/TwigRendererFactory.php">
<DocblockTypeContradiction>
<code>is_array($config)</code>
<code><![CDATA[is_array($config)]]></code>
</DocblockTypeContradiction>
<MixedArgument>
<code>$config</code>
<code><![CDATA[$config]]></code>
<code><![CDATA[$config['extension'] ?? 'html.twig']]></code>
</MixedArgument>
<MixedAssignment>
<code>$config</code>
<code><![CDATA[$config]]></code>
</MixedAssignment>
</file>
<file src="test/ConfigProviderTest.php">
<MixedReturnTypeCoercion>
<code>$config</code>
<code><![CDATA[$config]]></code>
<code><![CDATA[array<string, mixed>]]></code>
</MixedReturnTypeCoercion>
<RedundantCondition>
<code>assertIsArray</code>
<code><![CDATA[assertIsArray]]></code>
</RedundantCondition>
</file>
<file src="test/ExceptionTest.php">
<PossiblyFalseOperand>
<code><![CDATA[strrpos(ExceptionInterface::class, '\\')]]></code>
</PossiblyFalseOperand>
<PossiblyUnusedMethod>
<code>exception</code>
<code><![CDATA[exception]]></code>
</PossiblyUnusedMethod>
</file>
<file src="test/TestAsset/Extension/BarTwigExtension.php">
<UnusedClass>
<code>BarTwigExtension</code>
<code><![CDATA[BarTwigExtension]]></code>
</UnusedClass>
</file>
<file src="test/TestAsset/Extension/FooTwigExtension.php">
<UnusedClass>
<code>FooTwigExtension</code>
<code><![CDATA[FooTwigExtension]]></code>
</UnusedClass>
</file>
<file src="test/TwigEnvironmentFactoryTest.php">
Expand All @@ -123,61 +123,58 @@
<code><![CDATA['Test\Runtime\FooRuntime']]></code>
</ArgumentTypeCoercion>
<PossiblyUnusedMethod>
<code>invalidConfiguration</code>
<code>invalidExtensions</code>
<code>invalidRuntimeLoaders</code>
<code><![CDATA[invalidConfiguration]]></code>
<code><![CDATA[invalidExtensions]]></code>
<code><![CDATA[invalidRuntimeLoaders]]></code>
</PossiblyUnusedMethod>
<UndefinedClass>
<code><![CDATA['Test\Runtime\BarRuntime']]></code>
<code><![CDATA['Test\Runtime\FooRuntime']]></code>
</UndefinedClass>
<UnnecessaryVarAnnotation>
<code>CoreExtension</code>
<code>EscaperExtension</code>
<code><![CDATA[CoreExtension]]></code>
<code><![CDATA[EscaperExtension]]></code>
</UnnecessaryVarAnnotation>
<UnusedMethodCall>
<code>setAccessible</code>
<code><![CDATA[setAccessible]]></code>
</UnusedMethodCall>
</file>
<file src="test/TwigExtensionFunctionsRenderTest.php">
<PossiblyUnusedMethod>
<code>renderPathProvider</code>
<code>renderUrlProvider</code>
<code><![CDATA[renderPathProvider]]></code>
<code><![CDATA[renderUrlProvider]]></code>
</PossiblyUnusedMethod>
<PossiblyUnusedProperty>
<code>$twigLoader</code>
<code><![CDATA[$twigLoader]]></code>
</PossiblyUnusedProperty>
</file>
<file src="test/TwigExtensionTest.php">
<PossiblyFalseReference>
<code>getCallable</code>
<code>getCallable</code>
<code>getCallable</code>
<code>getCallable</code>
<code><![CDATA[getCallable]]></code>
<code><![CDATA[getCallable]]></code>
<code><![CDATA[getCallable]]></code>
<code><![CDATA[getCallable]]></code>
</PossiblyFalseReference>
<PossiblyUnusedMethod>
<code>emptyAssetVersions</code>
<code>zeroAssetVersions</code>
<code><![CDATA[emptyAssetVersions]]></code>
<code><![CDATA[zeroAssetVersions]]></code>
</PossiblyUnusedMethod>
</file>
<file src="test/TwigRendererFactoryTest.php">
<InvalidArgument>
<code><![CDATA['foo']]></code>
</InvalidArgument>
<PossiblyNullArgument>
<code>$namespace ?: null</code>
</PossiblyNullArgument>
<PossiblyNullPropertyAssignmentValue>
<code>null</code>
<code><![CDATA[null]]></code>
</PossiblyNullPropertyAssignmentValue>
<PossiblyUnusedMethod>
<code>fetchTwigEnvironment</code>
<code><![CDATA[fetchTwigEnvironment]]></code>
</PossiblyUnusedMethod>
<RedundantCondition>
<code>assertIsArray</code>
<code><![CDATA[assertIsArray]]></code>
</RedundantCondition>
<UnusedMethodCall>
<code>setAccessible</code>
<code><![CDATA[setAccessible]]></code>
</UnusedMethodCall>
</file>
<file src="test/TwigRendererTest.php">
Expand All @@ -196,19 +193,19 @@
<code><![CDATA[array<string, array<bool|int|string>>]]></code>
</InvalidReturnType>
<MixedArgument>
<code>$params</code>
<code><![CDATA[$params]]></code>
</MixedArgument>
<NullArgument>
<code>null</code>
<code><![CDATA[null]]></code>
</NullArgument>
<PossiblyUnusedMethod>
<code>assertEqualTemplatePath</code>
<code>invalidParameterValues</code>
<code>objectParameterValues</code>
<code><![CDATA[assertEqualTemplatePath]]></code>
<code><![CDATA[invalidParameterValues]]></code>
<code><![CDATA[objectParameterValues]]></code>
</PossiblyUnusedMethod>
<RedundantCondition>
<code>assertIsArray</code>
<code>assertIsArray</code>
<code><![CDATA[assertIsArray]]></code>
<code><![CDATA[assertIsArray]]></code>
</RedundantCondition>
</file>
</files>
2 changes: 1 addition & 1 deletion src/TwigEnvironmentFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ public function __invoke(ContainerInterface $container): Environment
$allPaths = isset($config['paths']) && is_array($config['paths']) ? $config['paths'] : [];
foreach ($allPaths as $namespace => $paths) {
$namespace = is_numeric($namespace) ? null : $namespace;
$namespace = $namespace ?: FilesystemLoader::MAIN_NAMESPACE;
$namespace = $namespace ?? FilesystemLoader::MAIN_NAMESPACE;
foreach ((array) $paths as $path) {
$loader->addPath($path, $namespace);
}
Expand Down
2 changes: 1 addition & 1 deletion src/TwigRenderer.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ public function render(string $name, $params = []): string
*/
public function addPath(string $path, ?string $namespace = null): void
{
$namespace = $namespace ?: FilesystemLoader::MAIN_NAMESPACE;
$namespace = $namespace ?? FilesystemLoader::MAIN_NAMESPACE;
$this->twigLoader->addPath($path, $namespace);
}

Expand Down
2 changes: 1 addition & 1 deletion test/TwigExtensionTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ public function createExtension(?string $assetsUrl, $assetsVersion): TwigExtensi

public function assertFunctionExists(string $name, array $functions, ?string $message = null): void
{
$message = $message ?: sprintf('Failed to identify function by name %s', $name);
$message = $message ?? sprintf('Failed to identify function by name %s', $name);
$function = $this->findFunction($name, $functions);
$this->assertInstanceOf(TwigFunction::class, $function, $message);
}
Expand Down
6 changes: 3 additions & 3 deletions test/TwigRendererFactoryTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ public function getConfigurationPaths(): array

public function assertPathsHasNamespace(?string $namespace, array $paths, ?string $message = null): void
{
$message = $message ?: sprintf('Paths do not contain namespace %s', $namespace ?: 'null');
$message = $message ?? sprintf('Paths do not contain namespace %s', $namespace ?? 'null');

$found = false;
foreach ($paths as $path) {
Expand All @@ -196,7 +196,7 @@ public function assertPathNamespaceCount(
array $paths,
?string $message = null
): void {
$message = $message ?: sprintf('Did not find %d paths with namespace %s', $expected, $namespace ?: 'null');
$message = $message ?? sprintf('Did not find %d paths with namespace %s', $expected, $namespace ?? 'null');

$count = 0;
foreach ($paths as $path) {
Expand All @@ -214,7 +214,7 @@ public function assertPathNamespaceContains(
array $paths,
?string $message = null
): void {
$message = $message ?: sprintf('Did not find path %s in namespace %s', $expected, $namespace ?: null);
$message = $message ?? sprintf('Did not find path %s in namespace %s', $expected, $namespace ?? 'null');

$found = [];
foreach ($paths as $path) {
Expand Down
10 changes: 5 additions & 5 deletions test/TwigRendererTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ public function assertEqualTemplatePath(
TemplatePath $received,
?string $message = null
): void {
$message = $message ?: 'Failed to assert TemplatePaths are equal';
$message = $message ?? 'Failed to assert TemplatePaths are equal';
if (
$expected->getPath() !== $received->getPath()
|| $expected->getNamespace() !== $received->getNamespace()
Expand Down Expand Up @@ -70,19 +70,19 @@ public function testCanAddPathWithEmptyNamespace(): void

public function assertTemplatePath(string $path, TemplatePath $templatePath, ?string $message = null): void
{
$message = $message ?: sprintf('Failed to assert TemplatePath contained path %s', $path);
$message = $message ?? sprintf('Failed to assert TemplatePath contained path %s', $path);
$this->assertEquals($path, $templatePath->getPath(), $message);
}

public function assertTemplatePathString(string $path, TemplatePath $templatePath, ?string $message = null): void
{
$message = $message ?: sprintf('Failed to assert TemplatePath casts to string path %s', $path);
$message = $message ?? sprintf('Failed to assert TemplatePath casts to string path %s', $path);
$this->assertEquals($path, (string) $templatePath, $message);
}

public function assertEmptyTemplatePathNamespace(TemplatePath $templatePath, ?string $message = null): void
{
$message = $message ?: 'Failed to assert TemplatePath namespace was empty';
$message = $message ?? 'Failed to assert TemplatePath namespace was empty';
$this->assertEmpty($templatePath->getNamespace(), $message);
}

Expand All @@ -103,7 +103,7 @@ public function assertTemplatePathNamespace(
TemplatePath $templatePath,
?string $message = null
): void {
$message = $message ?: sprintf(
$message = $message ?? sprintf(
'Failed to assert TemplatePath namespace matched %s',
var_export($namespace, true)
);
Expand Down

0 comments on commit 9b500eb

Please sign in to comment.