@@ -60,6 +60,18 @@ public function setUp()
60
60
$ formatroute ->setDefault (RouteObjectInterface::CONTROLLER_NAME , 'testController ' );
61
61
$ this ->getDm ()->persist ($ formatroute );
62
62
63
+ $ format2jsonroute = new Route (true );
64
+ $ format2jsonroute ->setPosition ($ root , 'format2.json ' );
65
+ $ format2jsonroute ->setDefault ('_format ' , 'json ' );
66
+ $ format2jsonroute ->setRequirement ('_format ' , 'json ' );
67
+ $ format2jsonroute ->setDefault (RouteObjectInterface::CONTROLLER_NAME , 'testJsonController ' );
68
+ $ this ->getDm ()->persist ($ format2jsonroute );
69
+
70
+ $ format2route = new Route (true );
71
+ $ format2route ->setPosition ($ root , 'format2 ' );
72
+ $ format2route ->setDefault (RouteObjectInterface::CONTROLLER_NAME , 'testController ' );
73
+ $ this ->getDm ()->persist ($ format2route );
74
+
63
75
$ this ->getDm ()->flush ();
64
76
}
65
77
@@ -153,6 +165,30 @@ public function testMatchFormat()
153
165
154
166
$ this ->assertTrue ($ request ->attributes ->has (DynamicRouter::ROUTE_KEY ));
155
167
$ this ->assertEquals ($ expected , $ matches );
168
+
169
+ $ expected = array (
170
+ '_controller ' => 'testController ' ,
171
+ '_format ' => 'html ' ,
172
+ RouteObjectInterface::ROUTE_NAME => '/test/routing/format2 ' ,
173
+ );
174
+ $ request = Request::create ('/format2.html ' );
175
+ $ matches = $ this ->router ->matchRequest ($ request );
176
+ ksort ($ matches );
177
+
178
+ $ this ->assertTrue ($ request ->attributes ->has (DynamicRouter::ROUTE_KEY ));
179
+ $ this ->assertEquals ($ expected , $ matches );
180
+
181
+ $ expected = array (
182
+ '_controller ' => 'testJsonController ' ,
183
+ '_format ' => 'json ' ,
184
+ RouteObjectInterface::ROUTE_NAME => '/test/routing/format2.json ' ,
185
+ );
186
+ $ request = Request::create ('/format2.json ' );
187
+ $ matches = $ this ->router ->matchRequest ($ request );
188
+ ksort ($ matches );
189
+
190
+ $ this ->assertTrue ($ request ->attributes ->has (DynamicRouter::ROUTE_KEY ));
191
+ $ this ->assertEquals ($ expected , $ matches );
156
192
}
157
193
158
194
/**
0 commit comments