|
12 | 12 | namespace Symfony\Component\DependencyInjection\Tests\Compiler;
|
13 | 13 |
|
14 | 14 | use PHPUnit\Framework\TestCase;
|
| 15 | +use Symfony\Component\DependencyInjection\Argument\AbstractArgument; |
15 | 16 | use Symfony\Component\DependencyInjection\Argument\BoundArgument;
|
16 | 17 | use Symfony\Component\DependencyInjection\Argument\ServiceLocatorArgument;
|
17 | 18 | use Symfony\Component\DependencyInjection\Argument\TaggedIteratorArgument;
|
@@ -262,11 +263,23 @@ public function testBindWithNamedArgs()
|
262 | 263 | $definition->setArguments(['c' => 'C', 'hostName' => 'H']);
|
263 | 264 | $definition->setBindings($bindings);
|
264 | 265 |
|
265 |
| - $container->register('foo', CaseSensitiveClass::class); |
266 |
| - |
267 | 266 | $pass = new ResolveBindingsPass();
|
268 | 267 | $pass->process($container);
|
269 | 268 |
|
270 | 269 | $this->assertEquals(['C', 'K', 'H'], $definition->getArguments());
|
271 | 270 | }
|
| 271 | + |
| 272 | + public function testAbstractArg() |
| 273 | + { |
| 274 | + $container = new ContainerBuilder(); |
| 275 | + |
| 276 | + $definition = $container->register(NamedArgumentsDummy::class, NamedArgumentsDummy::class); |
| 277 | + $definition->setArguments([new AbstractArgument(), 'apiKey' => new AbstractArgument()]); |
| 278 | + $definition->setBindings(['$c' => new BoundArgument('C'), '$apiKey' => new BoundArgument('K')]); |
| 279 | + |
| 280 | + $pass = new ResolveBindingsPass(); |
| 281 | + $pass->process($container); |
| 282 | + |
| 283 | + $this->assertEquals(['C', 'K'], $definition->getArguments()); |
| 284 | + } |
272 | 285 | }
|
0 commit comments