@@ -91,6 +91,8 @@ public function testRegisterClasses()
91
91
$ loader = new TestFileLoader ($ container , new FileLocator (self ::$ fixturesPath .'/Fixtures ' ));
92
92
93
93
$ loader ->registerClasses (new Definition (), 'Symfony\Component\DependencyInjection\Tests\Fixtures\Prototype\Sub \\' , 'Prototype/%sub_dir%/* ' );
94
+ $ loader ->registerClasses (new Definition (), 'Symfony\Component\DependencyInjection\Tests\Fixtures\Prototype\Sub \\' , 'Prototype/%sub_dir%/* ' ); // loading twice should not be an issue
95
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
94
96
95
97
$ this ->assertEquals (
96
98
['service_container ' , Bar::class],
@@ -119,6 +121,7 @@ public function testRegisterClassesWithExclude()
119
121
// load everything, except OtherDir/AnotherSub & Foo.php
120
122
'Prototype/{%other_dir%/AnotherSub,Foo.php} '
121
123
);
124
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
122
125
123
126
$ this ->assertTrue ($ container ->has (Bar::class));
124
127
$ this ->assertTrue ($ container ->has (Baz::class));
@@ -148,6 +151,8 @@ public function testRegisterClassesWithExcludeAsArray()
148
151
'Prototype/OtherDir/AnotherSub/DeeperBaz.php ' ,
149
152
]
150
153
);
154
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
155
+
151
156
$ this ->assertTrue ($ container ->has (Foo::class));
152
157
$ this ->assertTrue ($ container ->has (Baz::class));
153
158
$ this ->assertFalse ($ container ->has (Bar::class));
@@ -162,6 +167,7 @@ public function testNestedRegisterClasses()
162
167
$ prototype = new Definition ();
163
168
$ prototype ->setPublic (true )->setPrivate (true );
164
169
$ loader ->registerClasses ($ prototype , 'Symfony\Component\DependencyInjection\Tests\Fixtures\Prototype \\' , 'Prototype/* ' );
170
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
165
171
166
172
$ this ->assertTrue ($ container ->has (Bar::class));
167
173
$ this ->assertTrue ($ container ->has (Baz::class));
@@ -193,6 +199,7 @@ public function testMissingParentClass()
193
199
'Symfony\Component\DependencyInjection\Tests\Fixtures\Prototype\BadClasses \\' ,
194
200
'Prototype/%bad_classes_dir%/* '
195
201
);
202
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
196
203
197
204
$ this ->assertTrue ($ container ->has (MissingParent::class));
198
205
@@ -211,6 +218,7 @@ public function testRegisterClassesWithBadPrefix()
211
218
212
219
// the Sub is missing from namespace prefix
213
220
$ loader ->registerClasses (new Definition (), 'Symfony\Component\DependencyInjection\Tests\Fixtures\Prototype \\' , 'Prototype/Sub/* ' );
221
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
214
222
}
215
223
216
224
public function testRegisterClassesWithIncompatibleExclude ()
@@ -226,6 +234,7 @@ public function testRegisterClassesWithIncompatibleExclude()
226
234
'Prototype/* ' ,
227
235
'yaml/* '
228
236
);
237
+ $ loader ->registerAliasesForSinglyImplementedInterfaces ();
229
238
}
230
239
}
231
240
@@ -240,10 +249,4 @@ public function supports($resource, $type = null): bool
240
249
{
241
250
return false ;
242
251
}
243
-
244
- public function registerClasses (Definition $ prototype , $ namespace , $ resource , $ exclude = null )
245
- {
246
- parent ::registerClasses ($ prototype , $ namespace , $ resource , $ exclude );
247
- $ this ->registerAliasesForSinglyImplementedInterfaces ();
248
- }
249
252
}
0 commit comments