class DCOM58Test

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Component/Annotation/Doctrine/Ticket/DCOM58Test.php \Drupal\Tests\Component\Annotation\Doctrine\Ticket\DCOM58Test
  2. 8.9.x core/tests/Drupal/Tests/Component/Annotation/Doctrine/Ticket/DCOM58Test.php \Drupal\Tests\Component\Annotation\Doctrine\Ticket\DCOM58Test
  3. 10 core/tests/Drupal/Tests/Component/Annotation/Doctrine/Ticket/DCOM58Test.php \Drupal\Tests\Component\Annotation\Doctrine\Ticket\DCOM58Test

This class is a near-copy of \Doctrine\Tests\Common\Annotations\Ticket\DCOM58Test, which is part of the Doctrine project: <http://www.doctrine-project.org&gt;. It was copied from version 1.2.7.

Run this test in a separate process as it includes code that might have side effects.

@group DCOM58 @runTestsInSeparateProcesses

Hierarchy

  • class \Drupal\Tests\Component\Annotation\Doctrine\Ticket\DCOM58Test extends \PHPUnit\Framework\TestCase

Expanded class hierarchy of DCOM58Test

File

core/tests/Drupal/Tests/Component/Annotation/Doctrine/Ticket/DCOM58Test.php, line 23

Namespace

Drupal\Tests\Component\Annotation\Doctrine\Ticket
View source
class DCOM58Test extends TestCase {
    protected function setUp() : void {
        // Some class named Entity in the global namespace.
        include __DIR__ . '/DCOM58Entity.php';
    }
    public function testIssueGlobalNamespace() {
        $docblock = "@Entity";
        $parser = new DocParser();
        $parser->setImports(array(
            "__NAMESPACE__" => "Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping",
        ));
        $annots = $parser->parse($docblock);
        $this->assertCount(1, $annots);
        $this->assertInstanceOf("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping\\Entity", $annots[0]);
    }
    public function testIssueNamespaces() {
        $docblock = "@Entity";
        $parser = new DocParser();
        $parser->addNamespace("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM");
        $annots = $parser->parse($docblock);
        $this->assertCount(1, $annots);
        $this->assertInstanceOf("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Entity", $annots[0]);
    }
    public function testIssueMultipleNamespaces() {
        $docblock = "@Entity";
        $parser = new DocParser();
        $parser->addNamespace("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping");
        $parser->addNamespace("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM");
        $annots = $parser->parse($docblock);
        $this->assertCount(1, $annots);
        $this->assertInstanceOf("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping\\Entity", $annots[0]);
    }
    public function testIssueWithNamespacesOrImports() {
        $docblock = "@Entity";
        $parser = new DocParser();
        $annots = $parser->parse($docblock);
        $this->assertCount(1, $annots);
        $this->assertInstanceOf("Entity", $annots[0]);
        $this->assertCount(1, $annots);
    }
    public function testIssueSimpleAnnotationReader() {
        $reader = new SimpleAnnotationReader();
        $reader->addNamespace('Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping');
        $annots = $reader->getClassAnnotations(new \ReflectionClass(__NAMESPACE__ . "\\MappedClass"));
        $this->assertCount(1, $annots);
        $this->assertInstanceOf("Drupal\\Tests\\Component\\Annotation\\Doctrine\\Ticket\\Doctrine\\ORM\\Mapping\\Entity", $annots[0]);
    }

}

Members


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