annotate vendor/squizlabs/php_codesniffer/tests/bootstrap.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents af1871eacc83
children
rev   line source
Chris@17 1 <?php
Chris@17 2 /**
Chris@17 3 * Bootstrap file for PHP_CodeSniffer unit tests.
Chris@17 4 *
Chris@17 5 * @author Greg Sherwood <gsherwood@squiz.net>
Chris@17 6 * @copyright 2006-2017 Squiz Pty Ltd (ABN 77 084 670 600)
Chris@17 7 * @license https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence
Chris@17 8 */
Chris@17 9
Chris@17 10 if (defined('PHP_CODESNIFFER_IN_TESTS') === false) {
Chris@17 11 define('PHP_CODESNIFFER_IN_TESTS', true);
Chris@17 12 }
Chris@17 13
Chris@17 14 if (defined('PHP_CODESNIFFER_CBF') === false) {
Chris@17 15 define('PHP_CODESNIFFER_CBF', false);
Chris@17 16 }
Chris@17 17
Chris@17 18 if (defined('PHP_CODESNIFFER_VERBOSITY') === false) {
Chris@17 19 define('PHP_CODESNIFFER_VERBOSITY', 0);
Chris@17 20 }
Chris@17 21
Chris@17 22 if (is_file(__DIR__.'/../autoload.php') === true) {
Chris@17 23 include_once __DIR__.'/../autoload.php';
Chris@17 24 } else {
Chris@17 25 include_once 'PHP/CodeSniffer/autoload.php';
Chris@17 26 }
Chris@17 27
Chris@17 28 $tokens = new \PHP_CodeSniffer\Util\Tokens();
Chris@17 29
Chris@17 30 // Compatibility for PHPUnit < 6 and PHPUnit 6+.
Chris@17 31 if (class_exists('PHPUnit_Framework_TestSuite') === true && class_exists('PHPUnit\Framework\TestSuite') === false) {
Chris@17 32 class_alias('PHPUnit_Framework_TestSuite', 'PHPUnit'.'\Framework\TestSuite');
Chris@17 33 }
Chris@17 34
Chris@17 35 if (class_exists('PHPUnit_Framework_TestCase') === true && class_exists('PHPUnit\Framework\TestCase') === false) {
Chris@17 36 class_alias('PHPUnit_Framework_TestCase', 'PHPUnit'.'\Framework\TestCase');
Chris@17 37 }
Chris@17 38
Chris@17 39 if (class_exists('PHPUnit_TextUI_TestRunner') === true && class_exists('PHPUnit\TextUI\TestRunner') === false) {
Chris@17 40 class_alias('PHPUnit_TextUI_TestRunner', 'PHPUnit'.'\TextUI\TestRunner');
Chris@17 41 }
Chris@17 42
Chris@17 43 if (class_exists('PHPUnit_Framework_TestResult') === true && class_exists('PHPUnit\Framework\TestResult') === false) {
Chris@17 44 class_alias('PHPUnit_Framework_TestResult', 'PHPUnit'.'\Framework\TestResult');
Chris@17 45 }
Chris@17 46
Chris@17 47
Chris@17 48 /**
Chris@17 49 * A global util function to help print unit test fixing data.
Chris@17 50 *
Chris@17 51 * @return void
Chris@17 52 */
Chris@17 53 function printPHPCodeSnifferTestOutput()
Chris@17 54 {
Chris@18 55 echo PHP_EOL.PHP_EOL;
Chris@18 56
Chris@18 57 $output = 'The test files';
Chris@18 58 $data = [];
Chris@18 59
Chris@17 60 $codeCount = count($GLOBALS['PHP_CODESNIFFER_SNIFF_CODES']);
Chris@18 61 if (empty($GLOBALS['PHP_CODESNIFFER_SNIFF_CASE_FILES']) === false) {
Chris@18 62 $files = call_user_func_array('array_merge', $GLOBALS['PHP_CODESNIFFER_SNIFF_CASE_FILES']);
Chris@18 63 $files = array_unique($files);
Chris@18 64 $fileCount = count($files);
Chris@17 65
Chris@18 66 $output = '%d sniff test files';
Chris@18 67 $data[] = $fileCount;
Chris@18 68 }
Chris@18 69
Chris@18 70 $output .= ' generated %d unique error codes';
Chris@18 71 $data[] = $codeCount;
Chris@18 72
Chris@17 73 if ($codeCount > 0) {
Chris@17 74 $fixes = count($GLOBALS['PHP_CODESNIFFER_FIXABLE_CODES']);
Chris@17 75 $percent = round(($fixes / $codeCount * 100), 2);
Chris@18 76
Chris@18 77 $output .= '; %d were fixable (%d%%)';
Chris@18 78 $data[] = $fixes;
Chris@18 79 $data[] = $percent;
Chris@17 80 }
Chris@17 81
Chris@18 82 vprintf($output, $data);
Chris@18 83
Chris@17 84 }//end printPHPCodeSnifferTestOutput()