Rajout de doctrine/orm
[zf2.biz/galerie.git] / vendor / doctrine / common / tests / Doctrine / Tests / Common / Annotations / Ticket / DCOM58Test.php
1 <?php
2 namespace Doctrine\Tests\Common\Annotations\Ticket;
3
4 //Some class named Entity in the global namespace
5 include __DIR__ .'/DCOM58Entity.php';
6
7 /**
8  * @group DCOM58
9  */
10 class DCOM58Test extends \PHPUnit_Framework_TestCase
11 {
12     public function testIssue()
13     {
14         $reader     = new \Doctrine\Common\Annotations\AnnotationReader();
15         $result     = $reader->getClassAnnotations(new \ReflectionClass(__NAMESPACE__."\MappedClass"));
16
17         foreach ($result as $annot) {
18             $classAnnotations[get_class($annot)] = $annot;
19         }
20
21         $this->assertTrue(!isset($classAnnotations['']), 'Class "xxx" is not a valid entity or mapped super class.');
22     }
23
24     public function testIssueGlobalNamespace()
25     {
26         $docblock   = "@Entity";
27         $parser     = new \Doctrine\Common\Annotations\DocParser();
28         $parser->setImports(array(
29             "__NAMESPACE__" =>"Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping"
30         ));
31
32         $annots     = $parser->parse($docblock);
33
34         $this->assertEquals(1, count($annots));
35         $this->assertInstanceOf("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping\Entity", $annots[0]);
36     }
37
38     public function testIssueNamespaces()
39     {
40         $docblock   = "@Entity";
41         $parser     = new \Doctrine\Common\Annotations\DocParser();
42         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM");
43
44         $annots     = $parser->parse($docblock);
45
46         $this->assertEquals(1, count($annots));
47         $this->assertInstanceOf("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Entity", $annots[0]);
48     }
49
50     public function testIssueMultipleNamespaces()
51     {
52         $docblock   = "@Entity";
53         $parser     = new \Doctrine\Common\Annotations\DocParser();
54         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping");
55         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM");
56
57         $annots     = $parser->parse($docblock);
58
59         $this->assertEquals(1, count($annots));
60         $this->assertInstanceOf("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping\Entity", $annots[0]);
61     }
62
63     public function testIssueWithNamespacesOrImports()
64     {
65         $docblock   = "@Entity";
66         $parser     = new \Doctrine\Common\Annotations\DocParser();
67         $annots     = $parser->parse($docblock);
68
69         $this->assertEquals(1, count($annots));
70         $this->assertInstanceOf("Entity", $annots[0]);
71         $this->assertEquals(1, count($annots));
72     }
73
74
75     public function testIssueSimpleAnnotationReader()
76     {
77         $reader     = new \Doctrine\Common\Annotations\SimpleAnnotationReader();
78         $reader->addNamespace('Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping');
79         $annots     = $reader->getClassAnnotations(new \ReflectionClass(__NAMESPACE__."\MappedClass"));
80
81         $this->assertEquals(1, count($annots));
82         $this->assertInstanceOf("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping\Entity", $annots[0]);
83     }
84
85 }
86
87 /**
88  * @Entity
89  */
90 class MappedClass
91 {
92
93 }
94
95
96 namespace Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping;
97 /**
98 * @Annotation
99 */
100 class Entity
101 {
102
103 }
104
105 namespace Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM;
106 /**
107 * @Annotation
108 */
109 class Entity
110 {
111
112 }