Chris@17
|
1 <?php
|
Chris@17
|
2 /**
|
Chris@17
|
3 * A test class for running all PHP_CodeSniffer unit tests.
|
Chris@17
|
4 *
|
Chris@17
|
5 * @author Greg Sherwood <gsherwood@squiz.net>
|
Chris@17
|
6 * @copyright 2006-2015 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 namespace PHP_CodeSniffer\Tests;
|
Chris@17
|
11
|
Chris@17
|
12 if (is_file(__DIR__.'/../autoload.php') === true) {
|
Chris@17
|
13 include_once 'Core/AllTests.php';
|
Chris@17
|
14 include_once 'Standards/AllSniffs.php';
|
Chris@17
|
15 } else {
|
Chris@17
|
16 include_once 'CodeSniffer/Core/AllTests.php';
|
Chris@17
|
17 include_once 'CodeSniffer/Standards/AllSniffs.php';
|
Chris@17
|
18 }
|
Chris@17
|
19
|
Chris@17
|
20 // PHPUnit 7 made the TestSuite run() method incompatible with
|
Chris@17
|
21 // older PHPUnit versions due to return type hints, so maintain
|
Chris@17
|
22 // two different suite objects.
|
Chris@17
|
23 $phpunit7 = false;
|
Chris@17
|
24 if (class_exists('\PHPUnit\Runner\Version') === true) {
|
Chris@17
|
25 $version = \PHPUnit\Runner\Version::id();
|
Chris@17
|
26 if ($version[0] === '7') {
|
Chris@17
|
27 $phpunit7 = true;
|
Chris@17
|
28 }
|
Chris@17
|
29 }
|
Chris@17
|
30
|
Chris@17
|
31 if ($phpunit7 === true) {
|
Chris@17
|
32 include_once 'TestSuite7.php';
|
Chris@17
|
33 } else {
|
Chris@17
|
34 include_once 'TestSuite.php';
|
Chris@17
|
35 }
|
Chris@17
|
36
|
Chris@17
|
37 class PHP_CodeSniffer_AllTests
|
Chris@17
|
38 {
|
Chris@17
|
39
|
Chris@17
|
40
|
Chris@17
|
41 /**
|
Chris@17
|
42 * Add all PHP_CodeSniffer test suites into a single test suite.
|
Chris@17
|
43 *
|
Chris@17
|
44 * @return \PHPUnit\Framework\TestSuite
|
Chris@17
|
45 */
|
Chris@17
|
46 public static function suite()
|
Chris@17
|
47 {
|
Chris@17
|
48 $GLOBALS['PHP_CODESNIFFER_STANDARD_DIRS'] = [];
|
Chris@17
|
49 $GLOBALS['PHP_CODESNIFFER_TEST_DIRS'] = [];
|
Chris@17
|
50
|
Chris@17
|
51 // Use a special PHP_CodeSniffer test suite so that we can
|
Chris@17
|
52 // unset our autoload function after the run.
|
Chris@17
|
53 $suite = new TestSuite('PHP CodeSniffer');
|
Chris@17
|
54
|
Chris@17
|
55 $suite->addTest(Core\AllTests::suite());
|
Chris@17
|
56 $suite->addTest(Standards\AllSniffs::suite());
|
Chris@17
|
57
|
Chris@17
|
58 return $suite;
|
Chris@17
|
59
|
Chris@17
|
60 }//end suite()
|
Chris@17
|
61
|
Chris@17
|
62
|
Chris@17
|
63 }//end class
|