@@ -191,9 +191,9 @@ public function testInvokableClassRouteLoad()
191
191
);
192
192
193
193
$ this ->reader
194
- ->expects ($ this ->exactly (2 ))
195
- ->method ('getClassAnnotation ' )
196
- ->will ($ this ->returnValue ($ this ->getAnnotatedRoute ($ classRouteData )))
194
+ ->expects ($ this ->exactly (1 ))
195
+ ->method ('getClassAnnotations ' )
196
+ ->will ($ this ->returnValue (array ( $ this ->getAnnotatedRoute ($ classRouteData) )))
197
197
;
198
198
$ this ->reader
199
199
->expects ($ this ->once ())
@@ -205,8 +205,49 @@ public function testInvokableClassRouteLoad()
205
205
$ route = $ routeCollection ->get ($ classRouteData ['name ' ]);
206
206
207
207
$ this ->assertSame ($ classRouteData ['path ' ], $ route ->getPath (), '->load preserves class route path ' );
208
- $ this ->assertEquals (array_merge ($ classRouteData ['schemes ' ], $ classRouteData ['schemes ' ]), $ route ->getSchemes (), '->load preserves class route schemes ' );
209
- $ this ->assertEquals (array_merge ($ classRouteData ['methods ' ], $ classRouteData ['methods ' ]), $ route ->getMethods (), '->load preserves class route methods ' );
208
+ $ this ->assertEquals ($ classRouteData ['schemes ' ], $ route ->getSchemes (), '->load preserves class route schemes ' );
209
+ $ this ->assertEquals ($ classRouteData ['methods ' ], $ route ->getMethods (), '->load preserves class route methods ' );
210
+ }
211
+
212
+ public function testInvokableClassMultipleRouteLoad ()
213
+ {
214
+ $ classRouteData1 = array (
215
+ 'name ' => 'route1 ' ,
216
+ 'path ' => '/1 ' ,
217
+ 'schemes ' => array ('https ' ),
218
+ 'methods ' => array ('GET ' ),
219
+ );
220
+
221
+ $ classRouteData2 = array (
222
+ 'name ' => 'route2 ' ,
223
+ 'path ' => '/2 ' ,
224
+ 'schemes ' => array ('https ' ),
225
+ 'methods ' => array ('GET ' ),
226
+ );
227
+
228
+ $ this ->reader
229
+ ->expects ($ this ->exactly (1 ))
230
+ ->method ('getClassAnnotations ' )
231
+ ->will ($ this ->returnValue (array ($ this ->getAnnotatedRoute ($ classRouteData1 ), $ this ->getAnnotatedRoute ($ classRouteData2 ))))
232
+ ;
233
+ $ this ->reader
234
+ ->expects ($ this ->once ())
235
+ ->method ('getMethodAnnotations ' )
236
+ ->will ($ this ->returnValue (array ()))
237
+ ;
238
+
239
+ $ routeCollection = $ this ->loader ->load ('Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BazClass ' );
240
+ $ route = $ routeCollection ->get ($ classRouteData1 ['name ' ]);
241
+
242
+ $ this ->assertSame ($ classRouteData1 ['path ' ], $ route ->getPath (), '->load preserves class route path ' );
243
+ $ this ->assertEquals ($ classRouteData1 ['schemes ' ], $ route ->getSchemes (), '->load preserves class route schemes ' );
244
+ $ this ->assertEquals ($ classRouteData1 ['methods ' ], $ route ->getMethods (), '->load preserves class route methods ' );
245
+
246
+ $ route = $ routeCollection ->get ($ classRouteData2 ['name ' ]);
247
+
248
+ $ this ->assertSame ($ classRouteData2 ['path ' ], $ route ->getPath (), '->load preserves class route path ' );
249
+ $ this ->assertEquals ($ classRouteData2 ['schemes ' ], $ route ->getSchemes (), '->load preserves class route schemes ' );
250
+ $ this ->assertEquals ($ classRouteData2 ['methods ' ], $ route ->getMethods (), '->load preserves class route methods ' );
210
251
}
211
252
212
253
public function testInvokableClassWithMethodRouteLoad ()
0 commit comments