From bb881c9cd0d0f60ac997836fef5dbd25ab8fe141 Mon Sep 17 00:00:00 2001 From: Yonel Ceruto Date: Wed, 6 Mar 2019 15:21:57 -0500 Subject: [PATCH] Make 'headers' key optional for encoded messages --- .../Tests/Transport/AmqpExt/AmqpSenderTest.php | 15 +++++++++++++++ .../Messenger/Transport/AmqpExt/AmqpSender.php | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpSenderTest.php b/src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpSenderTest.php index caef14c9e2b1a..89e3feb856a8a 100644 --- a/src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpSenderTest.php +++ b/src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpSenderTest.php @@ -37,4 +37,19 @@ public function testItSendsTheEncodedMessage() $sender = new AmqpSender($connection, $serializer); $sender->send($envelope); } + + public function testItSendsTheEncodedMessageWithoutHeaders() + { + $envelope = new Envelope(new DummyMessage('Oy')); + $encoded = ['body' => '...']; + + $serializer = $this->getMockBuilder(SerializerInterface::class)->getMock(); + $serializer->method('encode')->with($envelope)->willReturnOnConsecutiveCalls($encoded); + + $connection = $this->getMockBuilder(Connection::class)->disableOriginalConstructor()->getMock(); + $connection->expects($this->once())->method('publish')->with($encoded['body'], []); + + $sender = new AmqpSender($connection, $serializer); + $sender->send($envelope); + } } diff --git a/src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpSender.php b/src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpSender.php index 88b99ebb063a4..25c9d79b639c7 100644 --- a/src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpSender.php +++ b/src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpSender.php @@ -41,7 +41,7 @@ public function send(Envelope $envelope): Envelope { $encodedMessage = $this->serializer->encode($envelope); - $this->connection->publish($encodedMessage['body'], $encodedMessage['headers']); + $this->connection->publish($encodedMessage['body'], $encodedMessage['headers'] ?? []); return $envelope; } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy