diff --git a/Describer/ModelRegistryAwareTrait.php b/Describer/ModelRegistryAwareTrait.php index 0c50189..3bcdeca 100644 --- a/Describer/ModelRegistryAwareTrait.php +++ b/Describer/ModelRegistryAwareTrait.php @@ -20,9 +20,6 @@ trait ModelRegistryAwareTrait */ private $modelRegistry; - /** - * @param ModelRegistry $modelRegistry - */ public function setModelRegistry(ModelRegistry $modelRegistry) { $this->modelRegistry = $modelRegistry; diff --git a/ModelDescriber/FormModelDescriber.php b/ModelDescriber/FormModelDescriber.php index 0d55193..07f5bcc 100644 --- a/ModelDescriber/FormModelDescriber.php +++ b/ModelDescriber/FormModelDescriber.php @@ -116,11 +116,8 @@ final class FormModelDescriber implements ModelDescriberInterface, ModelRegistry break; } - if ( - ($formType = $type->getInnerType()) && - ($formClass = get_class($formType)) && - !$this->isBuiltinType($formClass) //don't check builtin types in Form component. - ) { + if ($type->getInnerType() && ($formClass = get_class($type->getInnerType())) && !$this->isBuiltinType($formClass)) { + //if form type is not builtin in Form component. $model = new Model(new Type(Type::BUILTIN_TYPE_OBJECT, false, $formClass)); $property->setRef($this->modelRegistry->register($model)); break; @@ -136,13 +133,8 @@ final class FormModelDescriber implements ModelDescriberInterface, ModelRegistry } } - /** - * @param string $type - * - * @return bool - */ - private function isBuiltinType(string $type) : bool + private function isBuiltinType(string $type): bool { - return strpos($type, 'Symfony\Component\Form\Extension\Core\Type') !== false; + return 0 === strpos($type, 'Symfony\Component\Form\Extension\Core\Type'); } } diff --git a/Tests/Functional/Controller/ApiController.php b/Tests/Functional/Controller/ApiController.php index 7fe84fc..1a43d37 100644 --- a/Tests/Functional/Controller/ApiController.php +++ b/Tests/Functional/Controller/ApiController.php @@ -18,9 +18,9 @@ use Nelmio\ApiDocBundle\Annotation\Operation; use Nelmio\ApiDocBundle\Tests\Functional\Entity\Article; use Nelmio\ApiDocBundle\Tests\Functional\Entity\User; use Nelmio\ApiDocBundle\Tests\Functional\Form\DummyType; +use Nelmio\ApiDocBundle\Tests\Functional\Form\UserType; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Swagger\Annotations as SWG; -use Nelmio\ApiDocBundle\Tests\Functional\Form\UserType; /** * @Route("/api") diff --git a/Tests/Functional/Form/UserType.php b/Tests/Functional/Form/UserType.php index d3b9b4a..8cf8742 100644 --- a/Tests/Functional/Form/UserType.php +++ b/Tests/Functional/Form/UserType.php @@ -1,11 +1,20 @@ setDefaults([ - 'data_class' => User::class + 'data_class' => User::class, ]); } -} \ No newline at end of file +} diff --git a/Tests/Functional/FunctionalTest.php b/Tests/Functional/FunctionalTest.php index 9d087db..5d0380e 100644 --- a/Tests/Functional/FunctionalTest.php +++ b/Tests/Functional/FunctionalTest.php @@ -179,7 +179,7 @@ class FunctionalTest extends WebTestCase $this->assertEquals([ 'type' => 'object', 'properties' => [ - 'dummy' => ['$ref' => '#/definitions/DummyType'] + 'dummy' => ['$ref' => '#/definitions/DummyType'], ], 'required' => ['dummy'], ], $this->getModel('UserType')->toArray());