function AnnotatedClassDiscoveryTest::testGetDefinitions

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php \Drupal\Tests\Component\Annotation\AnnotatedClassDiscoveryTest::testGetDefinitions()
  2. 10 core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php \Drupal\Tests\Component\Annotation\AnnotatedClassDiscoveryTest::testGetDefinitions()
  3. 11.x core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php \Drupal\Tests\Component\Annotation\AnnotatedClassDiscoveryTest::testGetDefinitions()

@covers ::getDefinitions @covers ::prepareAnnotationDefinition @covers ::getAnnotationReader

File

core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php, line 47

Class

AnnotatedClassDiscoveryTest
@coversDefaultClass <a href="/api/drupal/core%21lib%21Drupal%21Component%21Annotation%21Plugin%21Discovery%21AnnotatedClassDiscovery.php/class/AnnotatedClassDiscovery/8.9.x" title="Defines a discovery mechanism to find annotated plugins in PSR-4 namespaces." class="local">\Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery</a> @group Annotation @runTestsInSeparateProcesses

Namespace

Drupal\Tests\Component\Annotation

Code

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());
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.