diff --git a/ecs.php b/ecs.php index 5d49511..bb9667c 100644 --- a/ecs.php +++ b/ecs.php @@ -122,6 +122,7 @@ use PhpCsFixer\Fixer\Semicolon\NoSinglelineWhitespaceBeforeSemicolonsFixer; use PhpCsFixer\Fixer\Semicolon\SpaceAfterSemicolonFixer; use PhpCsFixer\Fixer\Strict\DeclareStrictTypesFixer; +use PhpCsFixer\Fixer\Strict\StrictComparisonFixer; use PhpCsFixer\Fixer\Strict\StrictParamFixer; use PhpCsFixer\Fixer\StringNotation\SingleQuoteFixer; use PhpCsFixer\Fixer\Whitespace\BlankLineBeforeStatementFixer; @@ -358,6 +359,8 @@ DeclareStrictTypesFixer::class, // Functions should be used with `$strict` param set to `true` StrictParamFixer::class, + // Comparisons should be strict, `===` or `!==` must be used for comparisons + StrictComparisonFixer::class, // Convert double quotes to single quotes for simple strings SingleQuoteFixer::class, // Remove extra spaces in a nullable typehint diff --git a/tests/Integration/Fixtures/Basic.correct.php.inc b/tests/Integration/Fixtures/Basic.correct.php.inc index 922a41a..1d11928 100644 --- a/tests/Integration/Fixtures/Basic.correct.php.inc +++ b/tests/Integration/Fixtures/Basic.correct.php.inc @@ -14,8 +14,10 @@ class Basic $lambdaWithUnusedImport = function () { return 'foo'; }; // NoUselessSprintfFixer $uselessSprintf = 'bar'; - // SingleSpaceAfterConstructFixer - if ($a == $b) { + // StrictParamFixer + $useStrictParam = in_array(1337, $fooBar, true); + // SingleSpaceAfterConstructFixer, StrictComparisonFixer + if ($a === $b || $bazLength !== 3) { return true; } diff --git a/tests/Integration/Fixtures/Basic.wrong.php.inc b/tests/Integration/Fixtures/Basic.wrong.php.inc index aa795ae..34081b7 100644 --- a/tests/Integration/Fixtures/Basic.wrong.php.inc +++ b/tests/Integration/Fixtures/Basic.wrong.php.inc @@ -13,8 +13,10 @@ class Basic $lambdaWithUnusedImport = function () use ($fooBar) { return 'foo'; }; // NoUselessSprintfFixer $uselessSprintf = sprintf('bar'); - // SingleSpaceAfterConstructFixer - if ($a == $b) { return true; } + // StrictParamFixer + $useStrictParam = in_array(1337, $fooBar); + // SingleSpaceAfterConstructFixer, StrictComparisonFixer + if ($a == $b || $bazLength != 3) { return true; } return false; // BlankLineBeforeStatementFixer }