From 5b1433c38bbbbf4fde9db3d562ff3135016a1fee Mon Sep 17 00:00:00 2001 From: jrfnl Date: Tue, 18 Aug 2020 21:55:56 +0200 Subject: [PATCH] Debug code --- .../Sniffs/Operators/NewOperatorsSniff.php | 46 +++++++++++++++++++ phpunit-bootstrap.php | 3 ++ 2 files changed, 49 insertions(+) diff --git a/PHPCompatibility/Sniffs/Operators/NewOperatorsSniff.php b/PHPCompatibility/Sniffs/Operators/NewOperatorsSniff.php index 228e157f4..72293aa32 100644 --- a/PHPCompatibility/Sniffs/Operators/NewOperatorsSniff.php +++ b/PHPCompatibility/Sniffs/Operators/NewOperatorsSniff.php @@ -12,6 +12,8 @@ use PHPCompatibility\AbstractNewFeatureSniff; use PHP_CodeSniffer_File as File; +use PHPCSUtils\BackCompat\Helper; +use PHP_CodeSniffer\Util\Tokens; /** * Detect use of new PHP operators. @@ -132,14 +134,27 @@ class NewOperatorsSniff extends AbstractNewFeatureSniff */ public function register() { +echo PHP_EOL, '======================================================================', PHP_EOL; +echo 'TestVersion: ', Helper::getConfigData('testVersion'),PHP_EOL; + $tokens = array(); +//var_dump($this->newOperators); foreach ($this->newOperators as $token => $versions) { +echo "token $token defined ?", PHP_EOL; +var_dump(defined($token)); if (\defined($token)) { $tokens[] = constant($token); } elseif (isset($this->newOperatorsPHPCSCompat[$token])) { $tokens[] = $this->newOperatorsPHPCSCompat[$token]; } } + +$names = []; +foreach ($tokens as $token) { + $names[$token] = Tokens::tokenName($token); +} +var_dump($names); + return $tokens; } @@ -159,9 +174,40 @@ public function process(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $tokenType = $tokens[$stackPtr]['type']; +/* +static $dumped = false; +if ($dumped === false) { +ini_set( 'xdebug.overload_var_dump', 1 ); +//$temp = new \PHPCSDebug\Sniffs\Debug\TokenListSniff(); +//$temp->process($phpcsFile, 0); +$dumped = true; +} +echo '-------------------------------', PHP_EOL; +echo 'Current token: ', $tokenType, ' on line ', $tokens[$stackPtr]['line'], PHP_EOL; +if (isset($this->newOperators[$tokenType]) === false) { +var_dump($tokens[$stackPtr]); +} +*/ // Translate older PHPCS token combis for new operators to the actual operator. if (isset($this->newOperators[$tokenType]) === false) { +/* +echo 'Line: ', __LINE__, ' - ', $tokenType, ' is not a new operator type token',PHP_EOL; +echo 'Token in translate table:',PHP_EOL; +var_dump(isset($this->PHPCSCompatTranslate[$tokenType])); +echo 'before key in translate table set and token before set:',PHP_EOL; +var_dump(isset($this->PHPCSCompatTranslate[$tokenType]['before'], $tokens[$stackPtr - 1])); +if (isset($this->PHPCSCompatTranslate[$tokenType]['before'], $tokens[$stackPtr - 1])) { + echo 'type of token before is expected type of token before:',PHP_EOL; + var_dump($tokens[$stackPtr - 1]['type'] === $this->PHPCSCompatTranslate[$tokenType]['before']); +} +echo 'callback key in translate table set:',PHP_EOL; +var_dump(isset($this->PHPCSCompatTranslate[$tokenType]['callback'])); +if (isset($this->PHPCSCompatTranslate[$tokenType]['callback'])) { + echo 'callback output:',PHP_EOL; + var_dump(call_user_func(array($this, $this->PHPCSCompatTranslate[$tokenType]['callback']), $tokens, $stackPtr)); +} +*/ if (isset($this->PHPCSCompatTranslate[$tokenType]) && ((isset($this->PHPCSCompatTranslate[$tokenType]['before'], $tokens[$stackPtr - 1]) === true && $tokens[$stackPtr - 1]['type'] === $this->PHPCSCompatTranslate[$tokenType]['before']) diff --git a/phpunit-bootstrap.php b/phpunit-bootstrap.php index d7b99a148..3b4306e52 100644 --- a/phpunit-bootstrap.php +++ b/phpunit-bootstrap.php @@ -112,4 +112,7 @@ class_alias('PHPUnit_Framework_TestCase', 'PHPUnit\Framework\TestCase'); require_once __DIR__ . $ds . 'PHPCompatibility' . $ds . 'Tests' . $ds . 'BaseSniffTest.php'; require_once __DIR__ . $ds . 'PHPCompatibility' . $ds . 'Util' . $ds . 'Tests' . $ds . 'CoreMethodTestFrame.php'; + +//require_once dirname(dirname(__DIR__)) . $ds . 'PHPCSStandards' . $ds . 'PHPCSDevTools' . $ds . 'PHPCSDebug' . $ds . 'Sniffs' . $ds . 'Debug' . $ds . 'TokenListSniff.php'; + unset($ds, $phpcsDir, $vendorDir);