[FrameworkBundle] Execute the PhpDocExtractor earlier

This commit is contained in:
Guilhem N 2017-01-21 21:06:56 +01:00 committed by Fabien Potencier
parent 5bc83c4142
commit 0425e0549b
2 changed files with 36 additions and 1 deletions

View File

@ -15,7 +15,7 @@
<!-- Extractor -->
<service id="property_info.reflection_extractor" class="Symfony\Component\PropertyInfo\Extractor\ReflectionExtractor" public="false">
<tag name="property_info.list_extractor" priority="-1000" />
<tag name="property_info.type_extractor" priority="-1000" />
<tag name="property_info.type_extractor" priority="-1002" />
<tag name="property_info.access_extractor" priority="-1000" />
</service>
</services>

View File

@ -0,0 +1,35 @@
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Bundle\FrameworkBundle\Tests\Functional;
use Symfony\Component\PropertyInfo\Type;
class PropertyInfoTest extends WebTestCase
{
public function testPhpDocPriority()
{
static::bootKernel(array('test_case' => 'Serializer'));
$container = static::$kernel->getContainer();
$this->assertEquals(array(new Type(Type::BUILTIN_TYPE_ARRAY, false, null, true, new Type(Type::BUILTIN_TYPE_INT), new Type(Type::BUILTIN_TYPE_INT))), $container->get('property_info')->getTypes(Dummy::class, 'codes'));
}
}
class Dummy
{
/**
* @param int[] $codes
*/
public function setCodes(array $codes)
{
}
}