From 3cc3c67e5a7d054f0aabb45adc1d28a36d53fd5b Mon Sep 17 00:00:00 2001 From: Jeremy Mikola Date: Fri, 17 Aug 2012 11:23:03 -0400 Subject: [PATCH] [DoctrineBridge] Require class option for DoctrineType --- src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php | 3 ++- .../Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php b/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php index 06c753a769fb..53e55bab2981 100644 --- a/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php +++ b/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php @@ -135,7 +135,6 @@ public function setDefaultOptions(OptionsResolverInterface $resolver) $resolver->setDefaults(array( 'em' => null, - 'class' => null, 'property' => null, 'query_builder' => null, 'loader' => $loader, @@ -144,6 +143,8 @@ public function setDefaultOptions(OptionsResolverInterface $resolver) 'group_by' => null, )); + $resolver->setRequired(array('class')); + $resolver->setNormalizers(array( 'em' => $emNormalizer, )); diff --git a/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php b/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php index 1dc90fb3c727..3e67e8bed6ec 100644 --- a/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php +++ b/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php @@ -110,6 +110,14 @@ protected function persist(array $entities) // be managed! } + /** + * @expectedException Symfony\Component\OptionsResolver\Exception\MissingOptionsException + */ + public function testClassOptionIsRequired() + { + $this->factory->createNamed('name', 'entity'); + } + public function testSetDataToUninitializedEntityWithNonRequired() { $entity1 = new SingleIdentEntity(1, 'Foo');