[Form] fix usage of legacy TranslatorInterface

This commit is contained in:
Nicolas Grekas 2019-06-07 11:18:15 +02:00
parent 9c37d18719
commit 0fbfefe869
2 changed files with 10 additions and 3 deletions

View File

@ -20,7 +20,8 @@ use Symfony\Component\Form\FormInterface;
use Symfony\Component\Form\FormView; use Symfony\Component\Form\FormView;
use Symfony\Component\OptionsResolver\Options; use Symfony\Component\OptionsResolver\Options;
use Symfony\Component\OptionsResolver\OptionsResolver; use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Translation\TranslatorInterface as LegacyTranslatorInterface;
use Symfony\Contracts\Translation\TranslatorInterface;
class FileType extends AbstractType class FileType extends AbstractType
{ {
@ -35,8 +36,14 @@ class FileType extends AbstractType
private $translator; private $translator;
public function __construct(TranslatorInterface $translator = null) /**
* @param TranslatorInterface|null $translator
*/
public function __construct($translator = null)
{ {
if (null !== $translator && !$translator instanceof LegacyTranslatorInterface && !$translator instanceof TranslatorInterface) {
throw new \TypeError(sprintf('Argument 1 passed to %s() must be an instance of %s, %s given.', __METHOD__, TranslatorInterface::class, \is_object($translator) ? \get_class($translator) : \gettype($translator)));
}
$this->translator = $translator; $this->translator = $translator;
} }

View File

@ -17,7 +17,7 @@ use Symfony\Component\Form\NativeRequestHandler;
use Symfony\Component\Form\RequestHandlerInterface; use Symfony\Component\Form\RequestHandlerInterface;
use Symfony\Component\HttpFoundation\File\File; use Symfony\Component\HttpFoundation\File\File;
use Symfony\Component\HttpFoundation\File\UploadedFile; use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\Translation\TranslatorInterface; use Symfony\Contracts\Translation\TranslatorInterface;
class FileTypeTest extends BaseTypeTest class FileTypeTest extends BaseTypeTest
{ {