Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0da5059

Browse files
[Messenger] Fix passing options set via tags to handler descriptors
1 parenta746442 commit0da5059

File tree

3 files changed

+21
-21
lines changed

3 files changed

+21
-21
lines changed

‎src/Symfony/Component/Mailer/Bridge/Sendinblue/Tests/Transport/SendinblueApiTransportTest.php‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,6 @@ public function testSend()
131131
$transport =newSendinblueApiTransport('ACCESS_KEY',$client);
132132
$transport->setPort(8984);
133133

134-
$dataPart =newDataPart('body');
135134
$mail =newEmail();
136135
$mail->subject('Hello!')
137136
->to(newAddress('saif.gmati@symfony.com','Saif Eddin'))
@@ -141,7 +140,6 @@ public function testSend()
141140
->addCc('foo@bar.fr')
142141
->addBcc('foo@bar.fr')
143142
->addReplyTo('foo@bar.fr')
144-
->attachPart($dataPart)
145143
;
146144

147145
$message =$transport->send($mail);

‎src/Symfony/Component/Messenger/DependencyInjection/MessengerPass.php‎

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -115,18 +115,16 @@ private function registerHandlers(ContainerBuilder $container, array $busIds)
115115
$options = ['method' =>$options];
116116
}
117117

118-
if (!isset($options['from_transport']) &&isset($tag['from_transport'])) {
119-
$options['from_transport'] =$tag['from_transport'];
120-
}
121-
122-
$priority =$tag['priority'] ??$options['priority'] ??0;
118+
$options +=array_filter($tag);
119+
unset($options['handles']);
120+
$priority =$options['priority'] ??0;
123121
$method =$options['method'] ??'__invoke';
124122

125123
if (isset($options['bus'])) {
126124
if (!\in_array($options['bus'],$busIds)) {
127125
$messageLocation =isset($tag['handles']) ?'declared in your tag attribute "handles"' : ($r->implementsInterface(MessageSubscriberInterface::class) ?sprintf('returned by method "%s::getHandledMessages()"',$r->getName()) :sprintf('used as argument type in method "%s::%s()"',$r->getName(),$method));
128126

129-
thrownewRuntimeException(sprintf('Invalid configuration"%s" for message "%s": bus "%s" does not exist.',$messageLocation,$message,$options['bus']));
127+
thrownewRuntimeException(sprintf('Invalid configuration'.$messageLocation.' for message "%s": bus "%s" does not exist.',$message,$options['bus']));
130128
}
131129

132130
$buses = [$options['bus']];
@@ -135,7 +133,7 @@ private function registerHandlers(ContainerBuilder $container, array $busIds)
135133
if ('*' !==$message && !class_exists($message) && !interface_exists($message,false)) {
136134
$messageLocation =isset($tag['handles']) ?'declared in your tag attribute "handles"' : ($r->implementsInterface(MessageSubscriberInterface::class) ?sprintf('returned by method "%s::getHandledMessages()"',$r->getName()) :sprintf('used as argument type in method "%s::%s()"',$r->getName(),$method));
137135

138-
thrownewRuntimeException(sprintf('Invalid handler service "%s": class or interface "%s""%s" not found.',$serviceId,$message,$messageLocation));
136+
thrownewRuntimeException(sprintf('Invalid handler service "%s": class or interface "%s"'.$messageLocation.' not found.',$serviceId,$message));
139137
}
140138

141139
if (!$r->hasMethod($method)) {

‎src/Symfony/Component/Messenger/Tests/DependencyInjection/MessengerPassTest.php‎

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -170,13 +170,15 @@ public function testProcessHandlersByBus()
170170
$container,
171171
$commandBusHandlersLocatorDefinition->getArgument(0),
172172
MultipleBusesMessage::class,
173-
[MultipleBusesMessageHandler::class]
173+
[MultipleBusesMessageHandler::class],
174+
[['bus' =>$commandBusId]]
174175
);
175176
$this->assertHandlerDescriptor(
176177
$container,
177178
$commandBusHandlersLocatorDefinition->getArgument(0),
178179
DummyCommand::class,
179-
[DummyCommandHandler::class]
180+
[DummyCommandHandler::class],
181+
[['bus' =>$commandBusId]]
180182
);
181183

182184
$queryBusHandlersLocatorDefinition =$container->getDefinition($queryBusId.'.messenger.handlers_locator');
@@ -185,13 +187,15 @@ public function testProcessHandlersByBus()
185187
$container,
186188
$queryBusHandlersLocatorDefinition->getArgument(0),
187189
DummyQuery::class,
188-
[DummyQueryHandler::class]
190+
[DummyQueryHandler::class],
191+
[['bus' =>$queryBusId]]
189192
);
190193
$this->assertHandlerDescriptor(
191194
$container,
192195
$queryBusHandlersLocatorDefinition->getArgument(0),
193196
MultipleBusesMessage::class,
194-
[MultipleBusesMessageHandler::class]
197+
[MultipleBusesMessageHandler::class],
198+
[['bus' =>$queryBusId]]
195199
);
196200
}
197201

@@ -442,7 +446,7 @@ public function testItRegistersHandlersOnDifferentBuses()
442446
publicfunctiontestItThrowsAnExceptionOnUnknownBus()
443447
{
444448
$this->expectException(RuntimeException::class);
445-
$this->expectExceptionMessage('Invalid configuration"returned by method "Symfony\Component\Messenger\Tests\DependencyInjection\HandlerOnUndefinedBus::getHandledMessages()"" for message "Symfony\Component\Messenger\Tests\Fixtures\DummyMessage": bus "some_undefined_bus" does not exist.');
449+
$this->expectExceptionMessage('Invalid configuration returned by method "Symfony\Component\Messenger\Tests\DependencyInjection\HandlerOnUndefinedBus::getHandledMessages()" for message "Symfony\Component\Messenger\Tests\Fixtures\DummyMessage": bus "some_undefined_bus" does not exist.');
446450
$container =$this->getContainerBuilder();
447451
$container
448452
->register(HandlerOnUndefinedBus::class, HandlerOnUndefinedBus::class)
@@ -455,7 +459,7 @@ public function testItThrowsAnExceptionOnUnknownBus()
455459
publicfunctiontestUndefinedMessageClassForHandler()
456460
{
457461
$this->expectException(RuntimeException::class);
458-
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandler": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage""used as argument type in method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandler::__invoke()"" not found.');
462+
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandler": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage" used as argument type in method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandler::__invoke()" not found.');
459463
$container =$this->getContainerBuilder();
460464
$container
461465
->register(UndefinedMessageHandler::class, UndefinedMessageHandler::class)
@@ -468,7 +472,7 @@ public function testUndefinedMessageClassForHandler()
468472
publicfunctiontestUndefinedMessageClassForHandlerImplementingMessageHandlerInterface()
469473
{
470474
$this->expectException(RuntimeException::class);
471-
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaHandlerInterface": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage""used as argument type in method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaHandlerInterface::__invoke()"" not found.');
475+
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaHandlerInterface": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage" used as argument type in method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaHandlerInterface::__invoke()" not found.');
472476
$container =$this->getContainerBuilder();
473477
$container
474478
->register(UndefinedMessageHandlerViaHandlerInterface::class, UndefinedMessageHandlerViaHandlerInterface::class)
@@ -481,7 +485,7 @@ public function testUndefinedMessageClassForHandlerImplementingMessageHandlerInt
481485
publicfunctiontestUndefinedMessageClassForHandlerImplementingMessageSubscriberInterface()
482486
{
483487
$this->expectException(RuntimeException::class);
484-
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaSubscriberInterface": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage""returned by method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaSubscriberInterface::getHandledMessages()"" not found.');
488+
$this->expectExceptionMessage('Invalid handler service "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaSubscriberInterface": class or interface "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessage" returned by method "Symfony\Component\Messenger\Tests\DependencyInjection\UndefinedMessageHandlerViaSubscriberInterface::getHandledMessages()" not found.');
485489
$container =$this->getContainerBuilder();
486490
$container
487491
->register(UndefinedMessageHandlerViaSubscriberInterface::class, UndefinedMessageHandlerViaSubscriberInterface::class)
@@ -713,12 +717,12 @@ public function testItRegistersTheDebugCommand()
713717

714718
$this->assertEquals([
715719
$commandBusId => [
716-
DummyCommand::class => [[DummyCommandHandler::class, []]],
717-
MultipleBusesMessage::class => [[MultipleBusesMessageHandler::class, []]],
720+
DummyCommand::class => [[DummyCommandHandler::class, ['bus' =>$commandBusId]]],
721+
MultipleBusesMessage::class => [[MultipleBusesMessageHandler::class, ['bus' =>$commandBusId]]],
718722
],
719723
$queryBusId => [
720-
DummyQuery::class => [[DummyQueryHandler::class, []]],
721-
MultipleBusesMessage::class => [[MultipleBusesMessageHandler::class, []]],
724+
DummyQuery::class => [[DummyQueryHandler::class, ['bus' =>$queryBusId]]],
725+
MultipleBusesMessage::class => [[MultipleBusesMessageHandler::class, ['bus' =>$queryBusId]]],
722726
],
723727
$emptyBus => [],
724728
],$container->getDefinition('console.command.messenger_debug')->getArgument(0));

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp