From 75e3355da588fb64b3855ef61ce708b67ad48c3b Mon Sep 17 00:00:00 2001 From: Samuel ROZE Date: Sun, 31 Mar 2019 17:50:14 +0100 Subject: [PATCH] Fix the Doctrine transport to use the new interface --- .../Doctrine/DoctrineTransportFactoryTest.php | 23 +++++++------------ .../Transport/Doctrine/DoctrineTransport.php | 5 ++-- .../Doctrine/DoctrineTransportFactory.php | 9 +++----- 3 files changed, 13 insertions(+), 24 deletions(-) diff --git a/src/Symfony/Component/Messenger/Tests/Transport/Doctrine/DoctrineTransportFactoryTest.php b/src/Symfony/Component/Messenger/Tests/Transport/Doctrine/DoctrineTransportFactoryTest.php index 104de47dcd16b..03780ad1e7a8d 100644 --- a/src/Symfony/Component/Messenger/Tests/Transport/Doctrine/DoctrineTransportFactoryTest.php +++ b/src/Symfony/Component/Messenger/Tests/Transport/Doctrine/DoctrineTransportFactoryTest.php @@ -16,15 +16,14 @@ use Symfony\Component\Messenger\Transport\Doctrine\Connection; use Symfony\Component\Messenger\Transport\Doctrine\DoctrineTransport; use Symfony\Component\Messenger\Transport\Doctrine\DoctrineTransportFactory; +use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface; class DoctrineTransportFactoryTest extends TestCase { public function testSupports() { $factory = new DoctrineTransportFactory( - $this->getMockBuilder(RegistryInterface::class)->getMock(), - null, - false + $this->getMockBuilder(RegistryInterface::class)->getMock() ); $this->assertTrue($factory->supports('doctrine://default', [])); @@ -41,14 +40,12 @@ public function testCreateTransport() ->method('getConnection') ->willReturn($connection); - $factory = new DoctrineTransportFactory( - $registry, - null - ); + $factory = new DoctrineTransportFactory($registry); + $serializer = $this->createMock(SerializerInterface::class); $this->assertEquals( - new DoctrineTransport(new Connection(Connection::buildConfiguration('doctrine://default'), $connection), null), - $factory->createTransport('doctrine://default', []) + new DoctrineTransport(new Connection(Connection::buildConfiguration('doctrine://default'), $connection), $serializer), + $factory->createTransport('doctrine://default', [], $serializer) ); } @@ -65,11 +62,7 @@ public function testCreateTransportMustThrowAnExceptionIfManagerIsNotFound() throw new \InvalidArgumentException(); })); - $factory = new DoctrineTransportFactory( - $registry, - null - ); - - $factory->createTransport('doctrine://default', []); + $factory = new DoctrineTransportFactory($registry); + $factory->createTransport('doctrine://default', [], $this->createMock(SerializerInterface::class)); } } diff --git a/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransport.php b/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransport.php index 97c2a0a629557..b9c1d8ee8c00b 100644 --- a/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransport.php +++ b/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransport.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Messenger\Transport\Doctrine; use Symfony\Component\Messenger\Envelope; -use Symfony\Component\Messenger\Transport\Serialization\PhpSerializer; use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface; use Symfony\Component\Messenger\Transport\SetupableTransportInterface; use Symfony\Component\Messenger\Transport\TransportInterface; @@ -29,10 +28,10 @@ class DoctrineTransport implements TransportInterface, SetupableTransportInterfa private $receiver; private $sender; - public function __construct(Connection $connection, SerializerInterface $serializer = null) + public function __construct(Connection $connection, SerializerInterface $serializer) { $this->connection = $connection; - $this->serializer = $serializer ?? new PhpSerializer(); + $this->serializer = $serializer; } /** diff --git a/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransportFactory.php b/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransportFactory.php index 74f37933904be..a5ee99464221d 100644 --- a/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransportFactory.php +++ b/src/Symfony/Component/Messenger/Transport/Doctrine/DoctrineTransportFactory.php @@ -13,7 +13,6 @@ use Symfony\Bridge\Doctrine\RegistryInterface; use Symfony\Component\Messenger\Exception\TransportException; -use Symfony\Component\Messenger\Transport\Serialization\PhpSerializer; use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface; use Symfony\Component\Messenger\Transport\TransportFactoryInterface; use Symfony\Component\Messenger\Transport\TransportInterface; @@ -26,15 +25,13 @@ class DoctrineTransportFactory implements TransportFactoryInterface { private $registry; - private $serializer; - public function __construct(RegistryInterface $registry, SerializerInterface $serializer = null) + public function __construct(RegistryInterface $registry) { $this->registry = $registry; - $this->serializer = $serializer ?? new PhpSerializer(); } - public function createTransport(string $dsn, array $options): TransportInterface + public function createTransport(string $dsn, array $options, SerializerInterface $serializer): TransportInterface { $configuration = Connection::buildConfiguration($dsn, $options); @@ -46,7 +43,7 @@ public function createTransport(string $dsn, array $options): TransportInterface $connection = new Connection($configuration, $driverConnection); - return new DoctrineTransport($connection, $this->serializer); + return new DoctrineTransport($connection, $serializer); } public function supports(string $dsn, array $options): bool