bug #17926 [DependencyInjection] Enable alias for service_container (hason)
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] Enable alias for service_container
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
6161438
[DependencyInjection] Enabled alias for service_container
This commit is contained in:
commit
39b164219b
@ -42,6 +42,10 @@ class ReplaceAliasByActualDefinitionPass implements CompilerPassInterface
|
|||||||
foreach ($container->getAliases() as $id => $alias) {
|
foreach ($container->getAliases() as $id => $alias) {
|
||||||
$aliasId = (string) $alias;
|
$aliasId = (string) $alias;
|
||||||
|
|
||||||
|
if ('service_container' === $aliasId) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$definition = $container->getDefinition($aliasId);
|
$definition = $container->getDefinition($aliasId);
|
||||||
} catch (InvalidArgumentException $e) {
|
} catch (InvalidArgumentException $e) {
|
||||||
|
@ -34,6 +34,8 @@ class ReplaceAliasByActualDefinitionPassTest extends \PHPUnit_Framework_TestCase
|
|||||||
$container->setAlias('a_alias', 'a');
|
$container->setAlias('a_alias', 'a');
|
||||||
$container->setAlias('b_alias', 'b');
|
$container->setAlias('b_alias', 'b');
|
||||||
|
|
||||||
|
$container->setAlias('container', 'service_container');
|
||||||
|
|
||||||
$this->process($container);
|
$this->process($container);
|
||||||
|
|
||||||
$this->assertTrue($container->has('a'), '->process() does nothing to public definitions.');
|
$this->assertTrue($container->has('a'), '->process() does nothing to public definitions.');
|
||||||
@ -44,6 +46,7 @@ class ReplaceAliasByActualDefinitionPassTest extends \PHPUnit_Framework_TestCase
|
|||||||
'->process() replaces alias to actual.'
|
'->process() replaces alias to actual.'
|
||||||
);
|
);
|
||||||
$this->assertSame('b_alias', $aDefinition->getFactoryService());
|
$this->assertSame('b_alias', $aDefinition->getFactoryService());
|
||||||
|
$this->assertTrue($container->has('container'));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user