|
17 | 17 | use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory; |
18 | 18 | use Doctrine\DBAL\Types\Type as DBALType; |
19 | 19 | use Doctrine\ORM\EntityManager; |
20 | | -use Doctrine\ORM\Mapping\Column; |
21 | 20 | use Doctrine\ORM\Mapping\Driver\AttributeDriver; |
22 | 21 | use Doctrine\ORM\ORMSetup; |
23 | 22 | use PHPUnit\Framework\TestCase; |
|
35 | 34 | */ |
36 | 35 | class DoctrineExtractorTest extends TestCase |
37 | 36 | { |
38 | | - private function createExtractor() |
| 37 | + private function createExtractor(): DoctrineExtractor |
39 | 38 | { |
40 | 39 | $config = ORMSetup::createConfiguration(true); |
41 | 40 | $config->setMetadataDriverImpl(new AttributeDriver([__DIR__.'/../Tests/Fixtures' => 'Symfony\Bridge\Doctrine\Tests\Fixtures'], true)); |
42 | 41 | if (class_exists(DefaultSchemaManagerFactory::class)) { |
43 | 42 | $config->setSchemaManagerFactory(new DefaultSchemaManagerFactory()); |
44 | 43 | } |
45 | 44 |
|
46 | | - if (!(new \ReflectionMethod(EntityManager::class, '__construct'))->isPublic()) { |
47 | | - $entityManager = EntityManager::create(['driver' => 'pdo_sqlite'], $config); |
48 | | - } else { |
49 | | - $eventManager = new EventManager(); |
50 | | - $entityManager = new EntityManager(DriverManager::getConnection(['driver' => 'pdo_sqlite'], $config, $eventManager), $config, $eventManager); |
51 | | - } |
| 45 | + $eventManager = new EventManager(); |
| 46 | + $entityManager = new EntityManager(DriverManager::getConnection(['driver' => 'pdo_sqlite'], $config, $eventManager), $config, $eventManager); |
52 | 47 |
|
53 | 48 | if (!DBALType::hasType('foo')) { |
54 | 49 | DBALType::addType('foo', 'Symfony\Bridge\Doctrine\Tests\PropertyInfo\Fixtures\DoctrineFooType'); |
@@ -136,19 +131,16 @@ public function testExtractWithEmbedded() |
136 | 131 |
|
137 | 132 | public function testExtractEnum() |
138 | 133 | { |
139 | | - if (!property_exists(Column::class, 'enumType')) { |
140 | | - $this->markTestSkipped('The "enumType" requires doctrine/orm 2.11.'); |
141 | | - } |
142 | 134 | $this->assertEquals([new Type(Type::BUILTIN_TYPE_OBJECT, false, EnumString::class)], $this->createExtractor()->getTypes(DoctrineEnum::class, 'enumString', [])); |
143 | 135 | $this->assertEquals([new Type(Type::BUILTIN_TYPE_OBJECT, false, EnumInt::class)], $this->createExtractor()->getTypes(DoctrineEnum::class, 'enumInt', [])); |
144 | 136 | $this->assertNull($this->createExtractor()->getTypes(DoctrineEnum::class, 'enumStringArray', [])); |
145 | 137 | $this->assertEquals([new Type(Type::BUILTIN_TYPE_ARRAY, false, null, true, new Type(Type::BUILTIN_TYPE_INT), new Type(Type::BUILTIN_TYPE_OBJECT, false, EnumInt::class))], $this->createExtractor()->getTypes(DoctrineEnum::class, 'enumIntArray', [])); |
146 | 138 | $this->assertNull($this->createExtractor()->getTypes(DoctrineEnum::class, 'enumCustom', [])); |
147 | 139 | } |
148 | 140 |
|
149 | | - public static function typesProvider() |
| 141 | + public static function typesProvider(): array |
150 | 142 | { |
151 | | - $provider = [ |
| 143 | + return [ |
152 | 144 | ['id', [new Type(Type::BUILTIN_TYPE_INT)]], |
153 | 145 | ['guid', [new Type(Type::BUILTIN_TYPE_STRING)]], |
154 | 146 | ['bigint', [new Type(Type::BUILTIN_TYPE_STRING)]], |
@@ -231,8 +223,6 @@ public static function typesProvider() |
231 | 223 | )]], |
232 | 224 | ['json', null], |
233 | 225 | ]; |
234 | | - |
235 | | - return $provider; |
236 | 226 | } |
237 | 227 |
|
238 | 228 | public function testGetPropertiesCatchException() |
|
0 commit comments