Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7ae1176

Browse files
committed
fix case when there is no failure transport defined
1 parent f995ffa commit 7ae1176

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

src/Symfony/Component/Messenger/EventListener/SendFailedMessageToFailureTransportListener.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ public function onMessageFailed(WorkerMessageFailedEvent $event)
4141
return;
4242
}
4343

44+
if (!isset($this->failureSenders[$event->getReceiverName()])) {
45+
return;
46+
}
47+
4448
$envelope = $event->getEnvelope();
4549

4650
// avoid re-sending to the failed sender

src/Symfony/Component/Messenger/Tests/EventListener/SendFailedMessageToFailureTransportListenerTest.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,20 @@
2222

2323
class SendFailedMessageToFailureTransportListenerTest extends TestCase
2424
{
25+
public function testDoNothingIfFailureTransportIsNotDefined()
26+
{
27+
$sender = $this->createMock(SenderInterface::class);
28+
$sender->expects($this->never())->method('send');
29+
30+
$listener = new SendFailedMessageToFailureTransportListener([]);
31+
32+
$exception = new \Exception('no!');
33+
$envelope = new Envelope(new \stdClass());
34+
$event = new WorkerMessageFailedEvent($envelope, 'my_receiver', $exception);
35+
36+
$listener->onMessageFailed($event);
37+
}
38+
2539
public function testItSendsToTheFailureTransport()
2640
{
2741
$sender = $this->createMock(SenderInterface::class);

0 commit comments

Comments
 (0)