class ClassFinderTest
Same name in other branches
- 9 core/tests/Drupal/Tests/Component/ClassFinder/ClassFinderTest.php \Drupal\Tests\Component\ClassFinder\ClassFinderTest
- 8.9.x core/tests/Drupal/Tests/Component/ClassFinder/ClassFinderTest.php \Drupal\Tests\Component\ClassFinder\ClassFinderTest
- 11.x core/tests/Drupal/Tests/Component/ClassFinder/ClassFinderTest.php \Drupal\Tests\Component\ClassFinder\ClassFinderTest
@coversDefaultClass \Drupal\Component\ClassFinder\ClassFinder @group ClassFinder
Hierarchy
- class \Drupal\Tests\Component\ClassFinder\ClassFinderTest extends \PHPUnit\Framework\TestCase
Expanded class hierarchy of ClassFinderTest
File
-
core/
tests/ Drupal/ Tests/ Component/ ClassFinder/ ClassFinderTest.php, line 15
Namespace
Drupal\Tests\Component\ClassFinderView source
class ClassFinderTest extends TestCase {
/**
* @covers ::findFile
*/
public function testFindFile() : void {
$finder = new ClassFinder();
// The full path is returned therefore only tests with
// assertStringEndsWith() so the test is portable.
$expected_path = str_replace('/', DIRECTORY_SEPARATOR, 'core/tests/Drupal/Tests/Component/ClassFinder/ClassFinderTest.php');
$this->assertStringEndsWith($expected_path, $finder->findFile(ClassFinderTest::class));
$class = 'Not\\A\\Class';
$this->assertNull($finder->findFile($class));
// Register an autoloader that can find this class.
$loader = new ClassLoader();
$loader->addClassMap([
$class => __FILE__,
]);
$loader->register();
$this->assertEquals(__FILE__, $finder->findFile($class));
// This shouldn't prevent us from finding the original file.
$this->assertStringEndsWith($expected_path, $finder->findFile(ClassFinderTest::class));
// Clean up the additional autoloader after the test.
$loader->unregister();
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
ClassFinderTest::testFindFile | public | function | @covers ::findFile |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.