diff --git a/Magento2/Sniffs/Security/XssTemplateSniff.php b/Magento2/Sniffs/Security/XssTemplateSniff.php
index 3f89ac0b..330999e9 100644
--- a/Magento2/Sniffs/Security/XssTemplateSniff.php
+++ b/Magento2/Sniffs/Security/XssTemplateSniff.php
@@ -151,6 +151,10 @@ private function findSpecialAnnotation($stackPtr)
$startOfStatement = $this->file->findPrevious(T_OPEN_TAG, $stackPtr);
return $this->file->findPrevious(T_COMMENT, $stackPtr, $startOfStatement);
}
+ if ($this->tokens[$stackPtr]['code'] === T_OPEN_TAG_WITH_ECHO) {
+ $endOfStatement = $this->file->findNext(T_CLOSE_TAG, $stackPtr);
+ return $this->file->findNext(T_COMMENT, $stackPtr, $endOfStatement);
+ }
return false;
}
diff --git a/Magento2/Tests/Security/XssTemplateUnitTest.inc b/Magento2/Tests/Security/XssTemplateUnitTest.inc
index 95214531..eefb2c70 100644
--- a/Magento2/Tests/Security/XssTemplateUnitTest.inc
+++ b/Magento2/Tests/Security/XssTemplateUnitTest.inc
@@ -1,5 +1,5 @@
-
+
getSomeData(); echo $block->getSomeData(); /* @escapeNotVerified */ echo $block->getSomeData();?>
= $block->getTitle();?>
getSomeMethod($block->getHtmlId());?>
@@ -56,3 +56,4 @@ echo $var;
escapeJs($js); ?>
escapeCss($css); ?>
getJsLayout($jsLayout); ?>
+= /* @noEscape */ json_encode($config) ?>
diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml
index be5d59c1..6cf09ab7 100644
--- a/Magento2/ruleset.xml
+++ b/Magento2/ruleset.xml
@@ -60,6 +60,7 @@
10
error
*/lib/*
+ */Test/*
10
@@ -97,6 +98,7 @@
9
warning
*/lib/*
+ */Test/*
*.phtml
@@ -252,6 +254,7 @@
7
warning
+ */Test/*
7