119 lines
3.5 KiB
PHP
119 lines
3.5 KiB
PHP
<?php
|
|
/**
|
|
* Tests for the \PHP_CodeSniffer\Util\Common::isCamelCaps method.
|
|
*
|
|
* @author Greg Sherwood <gsherwood@squiz.net>
|
|
* @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600)
|
|
* @license https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence
|
|
*/
|
|
|
|
namespace PHP_CodeSniffer\Tests\Core\Autoloader;
|
|
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class DetermineLoadedClassTest extends TestCase
|
|
{
|
|
|
|
|
|
/**
|
|
* Load the test files.
|
|
*
|
|
* @return void
|
|
*/
|
|
public static function setUpBeforeClass()
|
|
{
|
|
include __DIR__.'/TestFiles/Sub/C.inc';
|
|
|
|
}//end setUpBeforeClass()
|
|
|
|
|
|
/**
|
|
* Test for when class list is ordered.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testOrdered()
|
|
{
|
|
$classesBeforeLoad = [
|
|
'classes' => [],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$classesAfterLoad = [
|
|
'classes' => [
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\A',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\B',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C',
|
|
],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$className = \PHP_CodeSniffer\Autoload::determineLoadedClass($classesBeforeLoad, $classesAfterLoad);
|
|
$this->assertEquals('PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C', $className);
|
|
|
|
}//end testOrdered()
|
|
|
|
|
|
/**
|
|
* Test for when class list is out of order.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testUnordered()
|
|
{
|
|
$classesBeforeLoad = [
|
|
'classes' => [],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$classesAfterLoad = [
|
|
'classes' => [
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\A',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\B',
|
|
],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$className = \PHP_CodeSniffer\Autoload::determineLoadedClass($classesBeforeLoad, $classesAfterLoad);
|
|
$this->assertEquals('PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C', $className);
|
|
|
|
$classesAfterLoad = [
|
|
'classes' => [
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\A',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\B',
|
|
],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$className = \PHP_CodeSniffer\Autoload::determineLoadedClass($classesBeforeLoad, $classesAfterLoad);
|
|
$this->assertEquals('PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C', $className);
|
|
|
|
$classesAfterLoad = [
|
|
'classes' => [
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\A',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\C',
|
|
'PHP_CodeSniffer\Tests\Core\Autoloader\B',
|
|
],
|
|
'interfaces' => [],
|
|
'traits' => [],
|
|
];
|
|
|
|
$className = \PHP_CodeSniffer\Autoload::determineLoadedClass($classesBeforeLoad, $classesAfterLoad);
|
|
$this->assertEquals('PHP_CodeSniffer\Tests\Core\Autoloader\Sub\C', $className);
|
|
|
|
}//end testUnordered()
|
|
|
|
|
|
}//end class
|