From 8a17a80c0c7d0cee0dca54c284dc2a54cca534cf Mon Sep 17 00:00:00 2001 From: jrfnl Date: Sat, 1 Aug 2020 01:48:24 +0200 Subject: [PATCH] PHP 8.0 | Generic/UpperCaseConstantName: allow for nullsafe object operator Includes unit test. --- .../Sniffs/NamingConventions/UpperCaseConstantNameSniff.php | 1 + .../Tests/NamingConventions/UpperCaseConstantNameUnitTest.inc | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/Standards/Generic/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php b/src/Standards/Generic/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php index e4173d98d0..db50eb56bb 100644 --- a/src/Standards/Generic/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php +++ b/src/Standards/Generic/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php @@ -83,6 +83,7 @@ public function process(File $phpcsFile, $stackPtr) $prev = $phpcsFile->findPrevious(T_WHITESPACE, ($stackPtr - 1), null, true); if ($tokens[$prev]['code'] === T_OBJECT_OPERATOR || $tokens[$prev]['code'] === T_DOUBLE_COLON + || $tokens[$prev]['code'] === T_NULLSAFE_OBJECT_OPERATOR ) { return; } diff --git a/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.inc b/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.inc index 7c33bbf119..6bf96f251c 100644 --- a/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.inc +++ b/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.inc @@ -29,3 +29,5 @@ class ClassConstBowOutTest { const // phpcs:ignore Standard.Category.Sniff some_constant = 2; } + +$foo->getBar()?->define('foo');