12
12
namespace Symfony \Component \Messenger \Tests \DependencyInjection ;
13
13
14
14
use PHPUnit \Framework \TestCase ;
15
- use Symfony \Component \DependencyInjection \Argument \RewindableGenerator ;
15
+ use Symfony \Component \DependencyInjection \Argument \IteratorArgument ;
16
16
use Symfony \Component \DependencyInjection \Compiler \ResolveChildDefinitionsPass ;
17
17
use Symfony \Component \DependencyInjection \Compiler \ResolveClassPass ;
18
18
use Symfony \Component \DependencyInjection \ContainerBuilder ;
@@ -67,8 +67,8 @@ public function testProcess()
67
67
$ this ->assertSame (HandlersLocator::class, $ handlersLocatorDefinition ->getClass ());
68
68
$ this ->assertEquals (
69
69
array (
70
- DummyMessage::class => new Reference (" messenger.handlers. $ busId . " .DummyMessage ::class),
71
- SecondMessage::class => new Reference (" messenger.handlers. $ busId . " .SecondMessage ::class),
70
+ DummyMessage::class => new IteratorArgument ( array ( new Reference (DummyHandler ::class)) ),
71
+ SecondMessage::class => new IteratorArgument ( array ( new Reference (MissingArgumentTypeHandler ::class)) ),
72
72
),
73
73
$ handlersLocatorDefinition ->getArgument (0 )
74
74
);
@@ -107,8 +107,8 @@ public function testProcessHandlersByBus()
107
107
$ this ->assertSame (HandlersLocator::class, $ commandBusHandlersLocatorDefinition ->getClass ());
108
108
$ this ->assertEquals (
109
109
array (
110
- MultipleBusesMessage::class => new Reference (" messenger.handlers. $ commandBusId . " .MultipleBusesMessage ::class),
111
- DummyCommand::class => new Reference (" messenger.handlers. $ commandBusId . " .DummyCommand ::class),
110
+ MultipleBusesMessage::class => new IteratorArgument ( array ( new Reference (MultipleBusesMessageHandler ::class)) ),
111
+ DummyCommand::class => new IteratorArgument ( array ( new Reference (DummyCommandHandler ::class)) ),
112
112
),
113
113
$ commandBusHandlersLocatorDefinition ->getArgument (0 )
114
114
);
@@ -117,8 +117,8 @@ public function testProcessHandlersByBus()
117
117
$ this ->assertSame (HandlersLocator::class, $ queryBusHandlersLocatorDefinition ->getClass ());
118
118
$ this ->assertEquals (
119
119
array (
120
- DummyQuery::class => new Reference (" messenger.handlers. $ queryBusId . " .DummyQuery ::class),
121
- MultipleBusesMessage::class => new Reference (" messenger.handlers. $ queryBusId . " .MultipleBusesMessage ::class),
120
+ DummyQuery::class => new IteratorArgument ( array ( new Reference (DummyQueryHandler ::class)) ),
121
+ MultipleBusesMessage::class => new IteratorArgument ( array ( new Reference (MultipleBusesMessageHandler ::class)) ),
122
122
),
123
123
$ queryBusHandlersLocatorDefinition ->getArgument (0 )
124
124
);
@@ -155,13 +155,10 @@ public function testGetClassesFromTheHandlerSubscriberInterface()
155
155
$ handlersMapping = $ container ->getDefinition ($ busId .'.messenger.handlers_locator ' )->getArgument (0 );
156
156
157
157
$ this ->assertArrayHasKey (DummyMessage::class, $ handlersMapping );
158
- $ this ->assertEquals (new Reference (" messenger.handlers. $ busId . " .DummyMessage ::class), $ handlersMapping [DummyMessage::class]);
158
+ $ this ->assertEquals (new IteratorArgument ( array ( new Reference (HandlerWithMultipleMessages ::class)) ), $ handlersMapping [DummyMessage::class]);
159
159
160
160
$ this ->assertArrayHasKey (SecondMessage::class, $ handlersMapping );
161
- $ handlersDefinition = $ container ->getDefinition ($ handlersMapping [SecondMessage::class]);
162
-
163
- $ this ->assertSame (RewindableGenerator::class, $ handlersDefinition ->getClass ());
164
- $ this ->assertEquals (array (new Reference (PrioritizedHandler::class), new Reference (HandlerWithMultipleMessages::class)), $ handlersDefinition ->getArgument (0 )[0 ]);
161
+ $ this ->assertEquals (new IteratorArgument (array (new Reference (PrioritizedHandler::class), new Reference (HandlerWithMultipleMessages::class))), $ handlersMapping [SecondMessage::class]);
165
162
}
166
163
167
164
public function testGetClassesAndMethodsAndPrioritiesFromTheSubscriber ()
@@ -183,13 +180,13 @@ public function testGetClassesAndMethodsAndPrioritiesFromTheSubscriber()
183
180
$ this ->assertArrayHasKey (DummyMessage::class, $ handlersMapping );
184
181
$ this ->assertArrayHasKey (SecondMessage::class, $ handlersMapping );
185
182
186
- $ dummyHandlerReference = $ container -> getDefinition ( $ handlersMapping [DummyMessage::class])-> getArgument ( 0 )[ 0 ] [0 ];
183
+ $ dummyHandlerReference = $ handlersMapping [DummyMessage::class]-> getValues () [0 ];
187
184
$ dummyHandlerDefinition = $ container ->getDefinition ($ dummyHandlerReference );
188
185
$ this ->assertSame ('callable ' , $ dummyHandlerDefinition ->getClass ());
189
186
$ this ->assertEquals (array (new Reference (HandlerMappingMethods::class), 'dummyMethod ' ), $ dummyHandlerDefinition ->getArgument (0 ));
190
187
$ this ->assertSame (array ('Closure ' , 'fromCallable ' ), $ dummyHandlerDefinition ->getFactory ());
191
188
192
- $ secondHandlerReference = $ container -> getDefinition ( $ handlersMapping [SecondMessage::class])-> getArgument ( 0 )[ 0 ] [1 ];
189
+ $ secondHandlerReference = $ handlersMapping [SecondMessage::class]-> getValues () [1 ];
193
190
$ secondHandlerDefinition = $ container ->getDefinition ($ secondHandlerReference );
194
191
$ this ->assertSame (PrioritizedHandler::class, $ secondHandlerDefinition ->getClass ());
195
192
}
@@ -281,11 +278,11 @@ public function testItShouldNotThrowIfGeneratorIsReturnedInsteadOfArray()
281
278
$ handlersMapping = $ container ->getDefinition ($ busId .'.messenger.handlers_locator ' )->getArgument (0 );
282
279
283
280
$ this ->assertArrayHasKey (DummyMessage::class, $ handlersMapping );
284
- $ firstReference = $ container -> getDefinition ( $ handlersMapping [DummyMessage::class])-> getArgument ( 0 )[ 0 ] [0 ];
281
+ $ firstReference = $ handlersMapping [DummyMessage::class]-> getValues () [0 ];
285
282
$ this ->assertEquals (array (new Reference (HandlerWithGenerators::class), 'dummyMethod ' ), $ container ->getDefinition ($ firstReference )->getArgument (0 ));
286
283
287
284
$ this ->assertArrayHasKey (SecondMessage::class, $ handlersMapping );
288
- $ secondReference = $ container -> getDefinition ( $ handlersMapping [SecondMessage::class])-> getArgument ( 0 )[ 0 ] [0 ];
285
+ $ secondReference = $ handlersMapping [SecondMessage::class]-> getValues () [0 ];
289
286
$ this ->assertEquals (array (new Reference (HandlerWithGenerators::class), 'secondMessage ' ), $ container ->getDefinition ($ secondReference )->getArgument (0 ));
290
287
}
291
288
@@ -304,13 +301,13 @@ public function testItRegistersHandlersOnDifferentBuses()
304
301
$ eventsHandlerMapping = $ container ->getDefinition ($ eventsBusId .'.messenger.handlers_locator ' )->getArgument (0 );
305
302
306
303
$ this ->assertEquals (array (DummyMessage::class), array_keys ($ eventsHandlerMapping ));
307
- $ firstReference = $ container -> getDefinition ( $ eventsHandlerMapping [DummyMessage::class])-> getArgument ( 0 )[ 0 ] [0 ];
304
+ $ firstReference = $ eventsHandlerMapping [DummyMessage::class]-> getValues () [0 ];
308
305
$ this ->assertEquals (array (new Reference (HandlerOnSpecificBuses::class), 'dummyMethodForEvents ' ), $ container ->getDefinition ($ firstReference )->getArgument (0 ));
309
306
310
307
$ commandsHandlerMapping = $ container ->getDefinition ($ commandsBusId .'.messenger.handlers_locator ' )->getArgument (0 );
311
308
312
309
$ this ->assertEquals (array (DummyMessage::class), array_keys ($ commandsHandlerMapping ));
313
- $ firstReference = $ container -> getDefinition ( $ commandsHandlerMapping [DummyMessage::class])-> getArgument ( 0 )[ 0 ] [0 ];
310
+ $ firstReference = $ commandsHandlerMapping [DummyMessage::class]-> getValues () [0 ];
314
311
$ this ->assertEquals (array (new Reference (HandlerOnSpecificBuses::class), 'dummyMethodForCommands ' ), $ container ->getDefinition ($ firstReference )->getArgument (0 ));
315
312
}
316
313
0 commit comments