From a65d4db643bedf4dd6fba4d36421a14b405762c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Machulda?= Date: Tue, 7 May 2024 11:47:49 +0200 Subject: [PATCH] Feat: Add MultilineStringToHeredocFixer (part of #94) --- ecs.php | 3 +++ .../Integration/Fixtures/Basic.correct.php.inc | 17 +++++++++++++++++ tests/Integration/Fixtures/Basic.wrong.php.inc | 15 +++++++++++++++ 3 files changed, 35 insertions(+) diff --git a/ecs.php b/ecs.php index cad238d..1346cb1 100644 --- a/ecs.php +++ b/ecs.php @@ -137,6 +137,7 @@ use PhpCsFixer\Fixer\Strict\DeclareStrictTypesFixer; use PhpCsFixer\Fixer\Strict\StrictComparisonFixer; use PhpCsFixer\Fixer\Strict\StrictParamFixer; +use PhpCsFixer\Fixer\StringNotation\MultilineStringToHeredocFixer; use PhpCsFixer\Fixer\StringNotation\SingleQuoteFixer; use PhpCsFixer\Fixer\Whitespace\ArrayIndentationFixer; use PhpCsFixer\Fixer\Whitespace\BlankLineBeforeStatementFixer; @@ -386,6 +387,8 @@ StrictParamFixer::class, // Comparisons should be strict, `===` or `!==` must be used for comparisons StrictComparisonFixer::class, + // Convert multiline string to heredoc or nowdoc. + MultilineStringToHeredocFixer::class, // Convert double quotes to single quotes for simple strings SingleQuoteFixer::class, // Each element of an array must be indented exactly once. diff --git a/tests/Integration/Fixtures/Basic.correct.php.inc b/tests/Integration/Fixtures/Basic.correct.php.inc index 1b59d94..ad05bd6 100644 --- a/tests/Integration/Fixtures/Basic.correct.php.inc +++ b/tests/Integration/Fixtures/Basic.correct.php.inc @@ -63,6 +63,23 @@ class Basic extends AbstractBasic implements InterfaceFromThisNamespace // Fully $baz = implode(',', ['foo', 'bar']); } + // HeredocIndentationFixer + $heredoc = <<