diff --git a/Form/PhpcrOdmTypeGuesser.php b/Form/PhpcrOdmTypeGuesser.php index ab05917b..5869a63d 100644 --- a/Form/PhpcrOdmTypeGuesser.php +++ b/Form/PhpcrOdmTypeGuesser.php @@ -77,7 +77,7 @@ public function guessType($class, $property) case 'mixedreferrers': $options = array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'type' => 'phpcr_odm_path', ); @@ -104,14 +104,14 @@ public function guessType($class, $property) case 'child': $options = array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), ); return new TypeGuess('phpcr_odm_path', $options, Guess::LOW_CONFIDENCE); case 'children': $options = array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'type' => 'phpcr_odm_path', ); @@ -160,7 +160,7 @@ public function guessType($class, $property) if ($metadata->isIdentifier($property) || $metadata->isUuid($property) ) { - $options['read_only'] = true; + $options['attr'] = array('readonly' => 'readonly'); } $type = 'text'; break; @@ -175,7 +175,7 @@ public function guessType($class, $property) case 'versionname': case 'versioncreated': default: - $options['read_only'] = true; + $options['attr'] = array('readonly' => 'readonly'); $options['required'] = false; $type = 'text'; break; diff --git a/Tests/Functional/Form/PHPCRTypeGuesserTest.php b/Tests/Functional/Form/PHPCRTypeGuesserTest.php index ef97844f..a244b39e 100644 --- a/Tests/Functional/Form/PHPCRTypeGuesserTest.php +++ b/Tests/Functional/Form/PHPCRTypeGuesserTest.php @@ -62,7 +62,6 @@ public function testFields() $formBuilder->get('bool'), '\Symfony\Component\Form\Extension\Core\Type\CheckboxType', array( - 'read_only' => false, 'required' => false, ) ); @@ -71,7 +70,6 @@ public function testFields() $formBuilder->get('date'), '\Symfony\Component\Form\Extension\Core\Type\DateTimeType', array( - 'read_only' => false, 'required' => true, ) ); @@ -80,7 +78,6 @@ public function testFields() $formBuilder->get('text'), '\Symfony\Component\Form\Extension\Core\Type\TextType', array( - 'read_only' => false, 'required' => true, ) ); @@ -89,7 +86,6 @@ public function testFields() $formBuilder->get('number'), '\Symfony\Component\Form\Extension\Core\Type\NumberType', array( - 'read_only' => false, 'required' => true, ) ); @@ -98,7 +94,6 @@ public function testFields() $formBuilder->get('integer'), '\Symfony\Component\Form\Extension\Core\Type\IntegerType', array( - 'read_only' => false, 'required' => true, ) ); @@ -107,7 +102,6 @@ public function testFields() $formBuilder->get('long'), '\Symfony\Component\Form\Extension\Core\Type\IntegerType', array( - 'read_only' => false, 'required' => true, ) ); @@ -133,7 +127,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'checkbox', - 'read_only' => false, 'required' => false, ) ); @@ -143,7 +136,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'datetime', - 'read_only' => false, 'required' => false, ) ); @@ -153,7 +145,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'text', - 'read_only' => false, 'required' => false, ) ); @@ -163,7 +154,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'number', - 'read_only' => false, 'required' => false, ) ); @@ -173,7 +163,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'integer', - 'read_only' => false, 'required' => false, ) ); @@ -183,7 +172,6 @@ public function testMultivalueFields() '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( 'type' => 'integer', - 'read_only' => false, 'required' => false, ) ); @@ -208,7 +196,7 @@ public function testHierarchy() $formBuilder->get('id'), '\Symfony\Component\Form\Extension\Core\Type\TextType', array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'required' => false, ) ); @@ -217,7 +205,6 @@ public function testHierarchy() $formBuilder->get('parent'), 'Doctrine\Bundle\PHPCRBundle\Form\Type\PathType', array( - 'read_only' => false, 'required' => true, ) ); @@ -226,7 +213,6 @@ public function testHierarchy() $formBuilder->get('nodename'), '\Symfony\Component\Form\Extension\Core\Type\TextType', array( - 'read_only' => false, 'required' => true, ) ); @@ -235,7 +221,7 @@ public function testHierarchy() $formBuilder->get('uuid'), '\Symfony\Component\Form\Extension\Core\Type\TextType', array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'required' => false, ) ); @@ -244,7 +230,7 @@ public function testHierarchy() $formBuilder->get('child'), 'Doctrine\Bundle\PHPCRBundle\Form\Type\PathType', array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'required' => false, ) ); @@ -253,7 +239,7 @@ public function testHierarchy() $formBuilder->get('children'), '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'required' => false, 'type' => 'phpcr_odm_path', ) @@ -337,7 +323,7 @@ public function testReferrers() $formBuilder->get('mixedReferrers'), '\Symfony\Component\Form\Extension\Core\Type\CollectionType', array( - 'read_only' => true, + 'attr' => array('readonly' => 'readonly'), 'required' => false, 'type' => 'phpcr_odm_path', ) @@ -373,7 +359,7 @@ private function assertFormType(FormBuilderInterface $element, $typeClass, array $type = $element->getType()->getInnerType(); $this->assertInstanceOf($typeClass, $type); foreach ($options as $option => $expected) { - $this->assertEquals($expected, $element->getOption($option), "Option '$option' does not have the expected value '$expected'"); + $this->assertEquals($expected, $element->getOption($option), "Option '$option' does not have the expected value '".serialize($expected)."'"); } } }