Bladeren bron

Replace FormBuilder with FormBuilderInterface

Emmanuel Vella 10 jaren geleden
bovenliggende
commit
187b3d2c95

+ 3 - 3
Admin/Admin.php

@@ -14,7 +14,7 @@ namespace Sonata\AdminBundle\Admin;
 use Sonata\AdminBundle\Datagrid\ProxyQueryInterface;
 use Sonata\CoreBundle\Model\Metadata;
 use Symfony\Component\Form\Form;
-use Symfony\Component\Form\FormBuilder;
+use Symfony\Component\Form\FormBuilderInterface;
 use Symfony\Component\PropertyAccess\PropertyPath;
 use Symfony\Component\PropertyAccess\PropertyAccess;
 use Symfony\Component\Validator\ValidatorInterface;
@@ -1322,11 +1322,11 @@ abstract class Admin implements AdminInterface, DomainObjectInterface
      * This method is being called by the main admin class and the child class,
      * the getFormBuilder is only call by the main admin class
      *
-     * @param \Symfony\Component\Form\FormBuilder $formBuilder
+     * @param \Symfony\Component\Form\FormBuilderInterface $formBuilder
      *
      * @return void
      */
-    public function defineFormBuilder(FormBuilder $formBuilder)
+    public function defineFormBuilder(FormBuilderInterface $formBuilder)
     {
         $mapper = new FormMapper($this->getFormContractor(), $formBuilder, $this);
 

+ 5 - 5
Admin/AdminHelper.php

@@ -12,7 +12,7 @@ namespace Sonata\AdminBundle\Admin;
 
 use Doctrine\Common\Inflector\Inflector;
 use Doctrine\Common\Util\ClassUtils;
-use Symfony\Component\Form\FormBuilder;
+use Symfony\Component\Form\FormBuilderInterface;
 use Symfony\Component\Form\FormView;
 use Sonata\AdminBundle\Exception\NoValueException;
 use Sonata\AdminBundle\Util\FormViewIterator;
@@ -33,12 +33,12 @@ class AdminHelper
     /**
      * @throws \RuntimeException
      *
-     * @param \Symfony\Component\Form\FormBuilder $formBuilder
-     * @param string                              $elementId
+     * @param \Symfony\Component\Form\FormBuilderInterface $formBuilder
+     * @param string                                       $elementId
      *
-     * @return \Symfony\Component\Form\FormBuilder
+     * @return \Symfony\Component\Form\FormBuilderInterface
      */
-    public function getChildFormBuilder(FormBuilder $formBuilder, $elementId)
+    public function getChildFormBuilder(FormBuilderInterface $formBuilder, $elementId)
     {
         foreach (new FormBuilderIterator($formBuilder) as $name => $formBuilder) {
             if ($name == $elementId) {

+ 1 - 1
Admin/AdminInterface.php

@@ -192,7 +192,7 @@ interface AdminInterface
     public function createQuery($context = 'list');
 
     /**
-     * @return \Symfony\Component\Form\FormBuilder the form builder
+     * @return \Symfony\Component\Form\FormBuilderInterface the form builder
      */
     public function getFormBuilder();
 

+ 3 - 3
Datagrid/Datagrid.php

@@ -14,9 +14,9 @@ namespace Sonata\AdminBundle\Datagrid;
 use Sonata\AdminBundle\Filter\FilterInterface;
 use Sonata\AdminBundle\Admin\FieldDescriptionCollection;
 use Sonata\AdminBundle\Admin\FieldDescriptionInterface;
-use Symfony\Component\Form\FormBuilder;
 use Symfony\Component\Form\Exception\UnexpectedTypeException;
 use Symfony\Component\Form\CallbackTransformer;
+use Symfony\Component\Form\FormBuilderInterface;
 
 class Datagrid implements DatagridInterface
 {
@@ -47,10 +47,10 @@ class Datagrid implements DatagridInterface
      * @param ProxyQueryInterface        $query
      * @param FieldDescriptionCollection $columns
      * @param PagerInterface             $pager
-     * @param FormBuilder                $formBuilder
+     * @param FormBuilderInterface       $formBuilder
      * @param array                      $values
      */
-    public function __construct(ProxyQueryInterface $query, FieldDescriptionCollection $columns, PagerInterface $pager, FormBuilder $formBuilder, array $values = array())
+    public function __construct(ProxyQueryInterface $query, FieldDescriptionCollection $columns, PagerInterface $pager, FormBuilderInterface $formBuilder, array $values = array())
     {
         $this->pager       = $pager;
         $this->query       = $query;

+ 4 - 4
Form/FormMapper.php

@@ -12,8 +12,8 @@ namespace Sonata\AdminBundle\Form;
 
 use Sonata\AdminBundle\Builder\FormContractorInterface;
 use Sonata\AdminBundle\Admin\AdminInterface;
-use Symfony\Component\Form\FormBuilder;
 use Sonata\AdminBundle\Mapper\BaseGroupedMapper;
+use Symfony\Component\Form\FormBuilderInterface;
 
 /**
  * This class is use to simulate the Form API
@@ -25,13 +25,13 @@ class FormMapper extends BaseGroupedMapper
 
     /**
      * @param \Sonata\AdminBundle\Builder\FormContractorInterface $formContractor
-     * @param \Symfony\Component\Form\FormBuilder                 $formBuilder
+     * @param \Symfony\Component\Form\FormBuilderInterface        $formBuilder
      * @param \Sonata\AdminBundle\Admin\AdminInterface            $admin
      */
-    public function __construct(FormContractorInterface $formContractor, FormBuilder $formBuilder, AdminInterface $admin)
+    public function __construct(FormContractorInterface $formContractor, FormBuilderInterface $formBuilder, AdminInterface $admin)
     {
         parent::__construct($formContractor, $admin);
-        $this->formBuilder    = $formBuilder;
+        $this->formBuilder = $formBuilder;
     }
 
     /**

+ 1 - 1
Tests/Admin/AdminTest.php

@@ -1426,7 +1426,7 @@ class AdminTest extends \PHPUnit_Framework_TestCase
 
         $postAdmin->expects($this->any())->method('getObject')->will($this->returnValue($post));
 
-        $formBuilder = $this->getMockForAbstractClass('Sonata\AdminBundle\Tests\Form\Builder\FormBuilder');
+        $formBuilder = $this->getMock('Symfony\Component\Form\FormBuilderInterface');
         $formBuilder->expects($this->any())->method('getForm')->will($this->returnValue(null));
 
         $tagAdmin = $this->getMockBuilder('Sonata\AdminBundle\Tests\Fixtures\Admin\TagAdmin')

+ 0 - 25
Tests/Form/Builder/FormBuilder.php

@@ -1,25 +0,0 @@
-<?php
-
-/*
- * This file is part of the Sonata package.
- *
- * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Sonata\AdminBundle\Tests\Form\Builder;
-
-use Symfony\Component\Form\Test\FormBuilderInterface;
-
-/**
- * Class FormBuilder
- *
- * Used to avoid an issue when to mocking FormBuilderInterface directly
- *
- * @see https://github.com/sebastianbergmann/phpunit-mock-objects/issues/103
- */
-abstract class FormBuilder implements FormBuilderInterface
-{
-}

+ 6 - 6
Util/FormBuilderIterator.php

@@ -10,7 +10,7 @@
 
 namespace Sonata\AdminBundle\Util;
 
-use Symfony\Component\Form\FormBuilder;
+use Symfony\Component\Form\FormBuilderInterface;
 
 class FormBuilderIterator extends \RecursiveArrayIterator
 {
@@ -25,10 +25,10 @@ class FormBuilderIterator extends \RecursiveArrayIterator
     protected $iterator;
 
     /**
-     * @param \Symfony\Component\Form\FormBuilder $formBuilder
-     * @param bool                                $prefix
+     * @param \Symfony\Component\Form\FormBuilderInterface $formBuilder
+     * @param bool                                         $prefix
      */
-    public function __construct(FormBuilder $formBuilder, $prefix = false)
+    public function __construct(FormBuilderInterface $formBuilder, $prefix = false)
     {
         $this->formBuilder = $formBuilder;
         $this->prefix      = $prefix ? $prefix : $formBuilder->getName();
@@ -38,11 +38,11 @@ class FormBuilderIterator extends \RecursiveArrayIterator
     /**
      * @static
      *
-     * @param \Symfony\Component\Form\FormBuilder $formBuilder
+     * @param \Symfony\Component\Form\FormBuilderInterface $formBuilder
      *
      * @return array
      */
-    private static function getKeys(FormBuilder $formBuilder)
+    private static function getKeys(FormBuilderInterface $formBuilder)
     {
         if (!self::$reflection) {
             self::$reflection = new \ReflectionProperty(get_class($formBuilder), 'children');