From ac5f9fde6e9be22a1f4c8cdb0107c562f60af38d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Tue, 7 Sep 2021 10:16:55 +0200 Subject: [PATCH 1/6] AC-667: Create phpcs static check for EmailTemplateTest --- Magento2/Sniffs/Legacy/EmailTemplateSniff.php | 50 +++++++++++++++++++ .../Tests/Legacy/EmailTemplateUnitTest.1.html | 3 ++ .../Tests/Legacy/EmailTemplateUnitTest.2.html | 4 ++ .../Tests/Legacy/EmailTemplateUnitTest.php | 38 ++++++++++++++ Magento2/ruleset.xml | 7 +++ 5 files changed, 102 insertions(+) create mode 100644 Magento2/Sniffs/Legacy/EmailTemplateSniff.php create mode 100644 Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html create mode 100644 Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html create mode 100644 Magento2/Tests/Legacy/EmailTemplateUnitTest.php diff --git a/Magento2/Sniffs/Legacy/EmailTemplateSniff.php b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php new file mode 100644 index 00000000..7fbcb7d9 --- /dev/null +++ b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php @@ -0,0 +1,50 @@ + 'Directive {{htmlescape}} is obsolete. Use {{var}} instead.', + '/\{\{escapehtml.*?\}\}/i' => 'Directive {{escapehtml}} is obsolete. Use {{var}} instead.', + ]; + + private const WARNING_CODE = 'FoundObsoleteEmailDirective'; + + /** + * @inheritdoc + */ + public function register(): array + { + return [ + T_INLINE_HTML + ]; + } + + /** + * @inheritDoc + */ + public function process(File $phpcsFile, $stackPtr) + { + $content = $phpcsFile->getTokens()[$stackPtr]['content']; + foreach (self::OBSOLETE_EMAIL_DIRECTIVES as $directiveRegex => $errorMessage) { + if(preg_match($directiveRegex, $content)) { + $phpcsFile->addWarning( + $errorMessage, + $stackPtr, + self::WARNING_CODE + ); + } + } + } +} diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html b/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html new file mode 100644 index 00000000..435302e1 --- /dev/null +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html @@ -0,0 +1,3 @@ +

{{var "H1"}}

+

{{var "H2"}}

+

{{var "p"}} {{var "p"}}

diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html b/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html new file mode 100644 index 00000000..6b24ea76 --- /dev/null +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html @@ -0,0 +1,4 @@ +

{{htmlescape "H1"}}

+

{{escapehtml "H2"}}

+

{{escapehtml "p"}} {{htmlescape "p"}}

+

{{trans "Translateme"}}

\ No newline at end of file diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.php b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php new file mode 100644 index 00000000..b6df0c8e --- /dev/null +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php @@ -0,0 +1,38 @@ + 1, + 2 => 1, + 3 => 2, + ]; + } + + return []; + } +} diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml index f31b105d..9e6202cb 100644 --- a/Magento2/ruleset.xml +++ b/Magento2/ruleset.xml @@ -242,6 +242,13 @@ warning + + view/email/*.html + view/*/email/*.html + 8 + warning + + 7 From 0cb8f6763c2319e0a2ea9a219e4ee7e09af9f6e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Tue, 7 Sep 2021 11:32:47 +0200 Subject: [PATCH 2/6] AC-667: Create phpcs static check for EmailTemplateTest --- Magento2/Sniffs/Legacy/EmailTemplateSniff.php | 2 +- Magento2/Tests/Legacy/EmailTemplateUnitTest.php | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Magento2/Sniffs/Legacy/EmailTemplateSniff.php b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php index 7fbcb7d9..4e240213 100644 --- a/Magento2/Sniffs/Legacy/EmailTemplateSniff.php +++ b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php @@ -38,7 +38,7 @@ public function process(File $phpcsFile, $stackPtr) { $content = $phpcsFile->getTokens()[$stackPtr]['content']; foreach (self::OBSOLETE_EMAIL_DIRECTIVES as $directiveRegex => $errorMessage) { - if(preg_match($directiveRegex, $content)) { + if (preg_match($directiveRegex, $content)) { $phpcsFile->addWarning( $errorMessage, $stackPtr, diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.php b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php index b6df0c8e..2dbb5676 100644 --- a/Magento2/Tests/Legacy/EmailTemplateUnitTest.php +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php @@ -3,6 +3,7 @@ * Copyright © Magento. All rights reserved. * See COPYING.txt for license details. */ + namespace Magento2\Tests\Legacy; use PHP_CodeSniffer\Tests\Standards\AbstractSniffUnitTest; From 4a78a9439af2e5a7e6c47bbc9dac6ae38f1c1b4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Tue, 7 Sep 2021 12:19:26 +0200 Subject: [PATCH 3/6] AC-667: Create phpcs static check for EmailTemplateTest --- Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html | 1 + Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html b/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html index 435302e1..9516974b 100644 --- a/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.1.html @@ -1,3 +1,4 @@

{{var "H1"}}

{{var "H2"}}

{{var "p"}} {{var "p"}}

+ diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html b/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html index 6b24ea76..422cea21 100644 --- a/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.2.html @@ -1,4 +1,4 @@

{{htmlescape "H1"}}

{{escapehtml "H2"}}

{{escapehtml "p"}} {{htmlescape "p"}}

-

{{trans "Translateme"}}

\ No newline at end of file +

{{trans "Translateme"}}

From e4698fbf56ffa3011e114d331f480ea4b4ed9d43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Tue, 7 Sep 2021 15:47:16 +0200 Subject: [PATCH 4/6] AC-667: Create phpcs static check for EmailTemplateTest --- Magento2/Sniffs/Legacy/EmailTemplateSniff.php | 6 +++--- .../Tests/Legacy/EmailTemplateUnitTest.php | 18 +++++++++--------- Magento2/ruleset.xml | 3 +-- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/Magento2/Sniffs/Legacy/EmailTemplateSniff.php b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php index 4e240213..17ebbf08 100644 --- a/Magento2/Sniffs/Legacy/EmailTemplateSniff.php +++ b/Magento2/Sniffs/Legacy/EmailTemplateSniff.php @@ -19,7 +19,7 @@ class EmailTemplateSniff implements Sniff '/\{\{escapehtml.*?\}\}/i' => 'Directive {{escapehtml}} is obsolete. Use {{var}} instead.', ]; - private const WARNING_CODE = 'FoundObsoleteEmailDirective'; + private const ERROR_CODE = 'FoundObsoleteEmailDirective'; /** * @inheritdoc @@ -39,10 +39,10 @@ public function process(File $phpcsFile, $stackPtr) $content = $phpcsFile->getTokens()[$stackPtr]['content']; foreach (self::OBSOLETE_EMAIL_DIRECTIVES as $directiveRegex => $errorMessage) { if (preg_match($directiveRegex, $content)) { - $phpcsFile->addWarning( + $phpcsFile->addError( $errorMessage, $stackPtr, - self::WARNING_CODE + self::ERROR_CODE ); } } diff --git a/Magento2/Tests/Legacy/EmailTemplateUnitTest.php b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php index 2dbb5676..c0b42189 100644 --- a/Magento2/Tests/Legacy/EmailTemplateUnitTest.php +++ b/Magento2/Tests/Legacy/EmailTemplateUnitTest.php @@ -13,15 +13,7 @@ class EmailTemplateUnitTest extends AbstractSniffUnitTest /** * @inheritdoc */ - public function getErrorList() - { - return []; - } - - /** - * @inheritdoc - */ - public function getWarningList($testFile = '') + public function getErrorList($testFile = '') { if ($testFile === 'EmailTemplateUnitTest.1.html') { return []; @@ -36,4 +28,12 @@ public function getWarningList($testFile = '') return []; } + + /** + * @inheritdoc + */ + public function getWarningList($testFile = '') + { + return []; + } } diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml index 9e6202cb..4736026d 100644 --- a/Magento2/ruleset.xml +++ b/Magento2/ruleset.xml @@ -241,12 +241,11 @@ 8 warning
- view/email/*.html view/*/email/*.html 8 - warning + error From e4f55405f684d530cd5c987c1a662a1bbd28c196 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Wed, 8 Sep 2021 10:44:45 +0200 Subject: [PATCH 5/6] Update Magento2/ruleset.xml Co-authored-by: Sergii Ivashchenko --- Magento2/ruleset.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml index 4736026d..2a499391 100644 --- a/Magento2/ruleset.xml +++ b/Magento2/ruleset.xml @@ -244,7 +244,7 @@ view/email/*.html view/*/email/*.html - 8 + 10 error From 2751031cef73853f8ba652135223c0083c1ea964 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Cuerdo=20=C3=81lvarez?= Date: Wed, 8 Sep 2021 11:40:31 +0200 Subject: [PATCH 6/6] AC-667: Create phpcs static check for EmailTemplateTest --- Magento2/ruleset.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml index 2a499391..e1b0f521 100644 --- a/Magento2/ruleset.xml +++ b/Magento2/ruleset.xml @@ -109,6 +109,12 @@ 10 error + + view/email/*.html + view/*/email/*.html + 10 + error + @@ -241,12 +247,6 @@ 8 warning - - view/email/*.html - view/*/email/*.html - 10 - error -