@@ -47,7 +47,7 @@ public function provideCompileData()
47
47
'Route with a variable ' ,
48
48
['/foo/{bar} ' ],
49
49
'/foo ' , '#^/foo/(?P<bar>[^/]++)$#sD ' , ['bar ' ], [
50
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
50
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
51
51
['text ' , '/foo ' ],
52
52
],
53
53
],
@@ -56,7 +56,7 @@ public function provideCompileData()
56
56
'Route with a variable that has a default value ' ,
57
57
['/foo/{bar} ' , ['bar ' => 'bar ' ]],
58
58
'/foo ' , '#^/foo(?:/(?P<bar>[^/]++))?$#sD ' , ['bar ' ], [
59
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
59
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
60
60
['text ' , '/foo ' ],
61
61
],
62
62
],
@@ -65,8 +65,8 @@ public function provideCompileData()
65
65
'Route with several variables ' ,
66
66
['/foo/{bar}/{foobar} ' ],
67
67
'/foo ' , '#^/foo/(?P<bar>[^/]++)/(?P<foobar>[^/]++)$#sD ' , ['bar ' , 'foobar ' ], [
68
- ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' ],
69
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
68
+ ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' , false , false ],
69
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
70
70
['text ' , '/foo ' ],
71
71
],
72
72
],
@@ -75,8 +75,8 @@ public function provideCompileData()
75
75
'Route with several variables that have default values ' ,
76
76
['/foo/{bar}/{foobar} ' , ['bar ' => 'bar ' , 'foobar ' => '' ]],
77
77
'/foo ' , '#^/foo(?:/(?P<bar>[^/]++)(?:/(?P<foobar>[^/]++))?)?$#sD ' , ['bar ' , 'foobar ' ], [
78
- ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' ],
79
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
78
+ ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' , false , false ],
79
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
80
80
['text ' , '/foo ' ],
81
81
],
82
82
],
@@ -85,8 +85,8 @@ public function provideCompileData()
85
85
'Route with several variables but some of them have no default values ' ,
86
86
['/foo/{bar}/{foobar} ' , ['bar ' => 'bar ' ]],
87
87
'/foo ' , '#^/foo/(?P<bar>[^/]++)/(?P<foobar>[^/]++)$#sD ' , ['bar ' , 'foobar ' ], [
88
- ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' ],
89
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
88
+ ['variable ' , '/ ' , '[^/]++ ' , 'foobar ' , false , false ],
89
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
90
90
['text ' , '/foo ' ],
91
91
],
92
92
],
@@ -95,40 +95,40 @@ public function provideCompileData()
95
95
'Route with an optional variable as the first segment ' ,
96
96
['/{bar} ' , ['bar ' => 'bar ' ]],
97
97
'' , '#^/(?P<bar>[^/]++)?$#sD ' , ['bar ' ], [
98
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
98
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
99
99
],
100
100
],
101
101
102
102
[
103
103
'Route with a requirement of 0 ' ,
104
104
['/{bar} ' , ['bar ' => null ], ['bar ' => '0 ' ]],
105
105
'' , '#^/(?P<bar>0)?$#sD ' , ['bar ' ], [
106
- ['variable ' , '/ ' , '0 ' , 'bar ' ],
106
+ ['variable ' , '/ ' , '0 ' , 'bar ' , false , false ],
107
107
],
108
108
],
109
109
110
110
[
111
111
'Route with an optional variable as the first segment with requirements ' ,
112
112
['/{bar} ' , ['bar ' => 'bar ' ], ['bar ' => '(foo|bar) ' ]],
113
113
'' , '#^/(?P<bar>(?:foo|bar))?$#sD ' , ['bar ' ], [
114
- ['variable ' , '/ ' , '(?:foo|bar) ' , 'bar ' ],
114
+ ['variable ' , '/ ' , '(?:foo|bar) ' , 'bar ' , false , false ],
115
115
],
116
116
],
117
117
118
118
[
119
119
'Route with only optional variables ' ,
120
120
['/{foo}/{bar} ' , ['foo ' => 'foo ' , 'bar ' => 'bar ' ]],
121
121
'' , '#^/(?P<foo>[^/]++)?(?:/(?P<bar>[^/]++))?$#sD ' , ['foo ' , 'bar ' ], [
122
- ['variable ' , '/ ' , '[^/]++ ' , 'bar ' ],
123
- ['variable ' , '/ ' , '[^/]++ ' , 'foo ' ],
122
+ ['variable ' , '/ ' , '[^/]++ ' , 'bar ' , false , false ],
123
+ ['variable ' , '/ ' , '[^/]++ ' , 'foo ' , false , false ],
124
124
],
125
125
],
126
126
127
127
[
128
128
'Route with a variable in last position ' ,
129
129
['/foo-{bar} ' ],
130
130
'/foo- ' , '#^/foo\-(?P<bar>[^/]++)$#sD ' , ['bar ' ], [
131
- ['variable ' , '- ' , '[^/]++ ' , 'bar ' ],
131
+ ['variable ' , '- ' , '[^/]++ ' , 'bar ' , false , false ],
132
132
['text ' , '/foo ' ],
133
133
],
134
134
],
@@ -138,7 +138,7 @@ public function provideCompileData()
138
138
['/{static{var}static} ' ],
139
139
'/{static ' , '#^/\{static(?P<var>[^/]+)static\}$#sD ' , ['var ' ], [
140
140
['text ' , 'static} ' ],
141
- ['variable ' , '' , '[^/]+ ' , 'var ' ],
141
+ ['variable ' , '' , '[^/]+ ' , 'var ' , false , false ],
142
142
['text ' , '/{static ' ],
143
143
],
144
144
],
@@ -147,20 +147,20 @@ public function provideCompileData()
147
147
'Route without separator between variables ' ,
148
148
['/{w}{x}{y}{z}.{_format} ' , ['z ' => 'default-z ' , '_format ' => 'html ' ], ['y ' => '(y|Y) ' ]],
149
149
'' , '#^/(?P<w>[^/\.]+)(?P<x>[^/\.]+)(?P<y>(?:y|Y))(?:(?P<z>[^/\.]++)(?:\.(?P<_format>[^/]++))?)?$#sD ' , ['w ' , 'x ' , 'y ' , 'z ' , '_format ' ], [
150
- ['variable ' , '. ' , '[^/]++ ' , '_format ' ],
151
- ['variable ' , '' , '[^/\.]++ ' , 'z ' ],
152
- ['variable ' , '' , '(?:y|Y) ' , 'y ' ],
153
- ['variable ' , '' , '[^/\.]+ ' , 'x ' ],
154
- ['variable ' , '/ ' , '[^/\.]+ ' , 'w ' ],
150
+ ['variable ' , '. ' , '[^/]++ ' , '_format ' , false , false ],
151
+ ['variable ' , '' , '[^/\.]++ ' , 'z ' , false , false ],
152
+ ['variable ' , '' , '(?:y|Y) ' , 'y ' , false , false ],
153
+ ['variable ' , '' , '[^/\.]+ ' , 'x ' , false , false ],
154
+ ['variable ' , '/ ' , '[^/\.]+ ' , 'w ' , false , false ],
155
155
],
156
156
],
157
157
158
158
[
159
159
'Route with a format ' ,
160
160
['/foo/{bar}.{_format} ' ],
161
161
'/foo ' , '#^/foo/(?P<bar>[^/\.]++)\.(?P<_format>[^/]++)$#sD ' , ['bar ' , '_format ' ], [
162
- ['variable ' , '. ' , '[^/]++ ' , '_format ' ],
163
- ['variable ' , '/ ' , '[^/\.]++ ' , 'bar ' ],
162
+ ['variable ' , '. ' , '[^/]++ ' , '_format ' , false , false ],
163
+ ['variable ' , '/ ' , '[^/\.]++ ' , 'bar ' , false , false ],
164
164
['text ' , '/foo ' ],
165
165
],
166
166
],
@@ -177,7 +177,7 @@ public function provideCompileData()
177
177
'Route with an explicit UTF-8 requirement ' ,
178
178
['/{bar} ' , ['bar ' => null ], ['bar ' => '. ' ], ['utf8 ' => true ]],
179
179
'' , '#^/(?P<bar>.)?$#sDu ' , ['bar ' ], [
180
- ['variable ' , '/ ' , '. ' , 'bar ' , true ],
180
+ ['variable ' , '/ ' , '. ' , 'bar ' , true , false ],
181
181
],
182
182
],
183
183
];
@@ -215,7 +215,7 @@ public function provideCompileImplicitUtf8Data()
215
215
'Route with an implicit UTF-8 requirement ' ,
216
216
['/{bar} ' , ['bar ' => null ], ['bar ' => 'é ' ]],
217
217
'' , '#^/(?P<bar>é)?$#sDu ' , ['bar ' ], [
218
- ['variable ' , '/ ' , 'é ' , 'bar ' , true ],
218
+ ['variable ' , '/ ' , 'é ' , 'bar ' , true , false ],
219
219
],
220
220
'requirements ' ,
221
221
],
@@ -224,7 +224,7 @@ public function provideCompileImplicitUtf8Data()
224
224
'Route with a UTF-8 class requirement ' ,
225
225
['/{bar} ' , ['bar ' => null ], ['bar ' => '\pM ' ]],
226
226
'' , '#^/(?P<bar>\pM)?$#sDu ' , ['bar ' ], [
227
- ['variable ' , '/ ' , '\pM ' , 'bar ' , true ],
227
+ ['variable ' , '/ ' , '\pM ' , 'bar ' , true , false ],
228
228
],
229
229
'requirements ' ,
230
230
],
@@ -233,8 +233,8 @@ public function provideCompileImplicitUtf8Data()
233
233
'Route with a UTF-8 separator ' ,
234
234
['/foo/{bar}§{_format} ' , [], [], ['compiler_class ' => Utf8RouteCompiler::class]],
235
235
'/foo ' , '#^/foo/(?P<bar>[^/§]++)§(?P<_format>[^/]++)$#sDu ' , ['bar ' , '_format ' ], [
236
- ['variable ' , '§ ' , '[^/]++ ' , '_format ' , true ],
237
- ['variable ' , '/ ' , '[^/§]++ ' , 'bar ' , true ],
236
+ ['variable ' , '§ ' , '[^/]++ ' , '_format ' , true , false ],
237
+ ['variable ' , '/ ' , '[^/§]++ ' , 'bar ' , true , false ],
238
238
['text ' , '/foo ' ],
239
239
],
240
240
'patterns ' ,
@@ -337,11 +337,11 @@ public function provideCompileWithHostData()
337
337
'Route with host pattern and some variables ' ,
338
338
['/hello/{name} ' , [], [], [], 'www.example.{tld} ' ],
339
339
'/hello ' , '#^/hello/(?P<name>[^/]++)$#sD ' , ['tld ' , 'name ' ], ['name ' ], [
340
- ['variable ' , '/ ' , '[^/]++ ' , 'name ' ],
340
+ ['variable ' , '/ ' , '[^/]++ ' , 'name ' , false , false ],
341
341
['text ' , '/hello ' ],
342
342
],
343
343
'#^www\.example\.(?P<tld>[^\.]++)$#sDi ' , ['tld ' ], [
344
- ['variable ' , '. ' , '[^\.]++ ' , 'tld ' ],
344
+ ['variable ' , '. ' , '[^\.]++ ' , 'tld ' , false , false ],
345
345
['text ' , 'www.example ' ],
346
346
],
347
347
],
@@ -352,9 +352,9 @@ public function provideCompileWithHostData()
352
352
['text ' , '/hello ' ],
353
353
],
354
354
'#^(?P<locale>[^\.]++)\.example\.(?P<tld>[^\.]++)$#sDi ' , ['locale ' , 'tld ' ], [
355
- ['variable ' , '. ' , '[^\.]++ ' , 'tld ' ],
355
+ ['variable ' , '. ' , '[^\.]++ ' , 'tld ' , false , false ],
356
356
['text ' , '.example ' ],
357
- ['variable ' , '' , '[^\.]++ ' , 'locale ' ],
357
+ ['variable ' , '' , '[^\.]++ ' , 'locale ' , false , false ],
358
358
],
359
359
],
360
360
[
@@ -364,9 +364,9 @@ public function provideCompileWithHostData()
364
364
['text ' , '/hello ' ],
365
365
],
366
366
'#^(?P<locale>[^\.]++)\.example\.(?P<tld>[^\.]++)$#sDi ' , ['locale ' , 'tld ' ], [
367
- ['variable ' , '. ' , '[^\.]++ ' , 'tld ' ],
367
+ ['variable ' , '. ' , '[^\.]++ ' , 'tld ' , false , false ],
368
368
['text ' , '.example ' ],
369
- ['variable ' , '' , '[^\.]++ ' , 'locale ' ],
369
+ ['variable ' , '' , '[^\.]++ ' , 'locale ' , false , false ],
370
370
],
371
371
],
372
372
];
0 commit comments