Same filename in this branch
- 10 core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php
- 10 core/tests/Drupal/KernelTests/Core/Plugin/Discovery/AnnotatedClassDiscoveryTest.php
- 10 core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php
Same filename and directory in other branches
- 8.9.x core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php
- 9 core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php
Namespace
Drupal\Tests\Component\Annotation
File
core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php
View source
<?php
declare (strict_types=1);
namespace Drupal\Tests\Component\Annotation;
use Drupal\Component\Annotation\Plugin;
use Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery;
use Drupal\Component\FileCache\FileCacheFactory;
use PHPUnit\Framework\TestCase;
class AnnotatedClassDiscoveryTest extends TestCase {
protected function setUp() : void {
parent::setUp();
FileCacheFactory::setConfiguration([
FileCacheFactory::DISABLE_CACHE => TRUE,
]);
FileCacheFactory::setPrefix('prefix');
}
public function testGetPluginNamespaces() {
$discovery = new AnnotatedClassDiscovery([
'com/example' => [
__DIR__,
],
]);
$reflection = new \ReflectionMethod($discovery, 'getPluginNamespaces');
$result = $reflection
->invoke($discovery);
$this
->assertEquals([
'com/example' => [
__DIR__,
],
], $result);
}
public function testGetDefinitions() {
$discovery = new AnnotatedClassDiscovery([
'com\\example' => [
__DIR__ . '/Fixtures',
],
]);
$this
->assertEquals([
'discovery_test_1' => [
'id' => 'discovery_test_1',
'class' => 'com\\example\\PluginNamespace\\DiscoveryTest1',
],
], $discovery
->getDefinitions());
$custom_annotation_discovery = new AnnotatedClassDiscovery([
'com\\example' => [
__DIR__ . '/Fixtures',
],
], CustomPlugin::class, [
'Drupal\\Tests\\Component\\Annotation',
]);
$this
->assertEquals([
'discovery_test_1' => [
'id' => 'discovery_test_1',
'class' => 'com\\example\\PluginNamespace\\DiscoveryTest1',
'title' => 'Discovery test plugin',
],
], $custom_annotation_discovery
->getDefinitions());
$empty_discovery = new AnnotatedClassDiscovery([
'com\\example' => [
__DIR__ . '/Fixtures',
],
], CustomPlugin2::class, [
'Drupal\\Tests\\Component\\Annotation',
]);
$this
->assertEquals([], $empty_discovery
->getDefinitions());
}
}
class CustomPlugin extends Plugin {
public $id;
public $title = '';
}
class CustomPlugin2 extends Plugin {
}
Classes