8000 Marked the ResolveParameterPlaceHoldersPassTest as legacy · symfony/symfony@ffd9bd1 · GitHub
[go: up one dir, main page]

Skip to content

Commit ffd9bd1

Browse files
committed
Marked the ResolveParameterPlaceHoldersPassTest as legacy
1 parent be05344 commit ffd9bd1

File tree

3 files changed

+54
-3
lines changed

3 files changed

+54
-3
lines changed

src/Symfony/Component/DependencyInjection/Compiler/ResolveParameterPlaceHoldersPass.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ public function process(ContainerBuilder $container)
3838
$definition->setFile($parameterBag->resolveValue($definition->getFile()));
3939
$definition->setArguments($parameterBag->resolveValue($definition->getArguments()));
4040
$definition->setFactoryClass($parameterBag->resolveValue($definition->getFactoryClass()));
41+
$definition->setFactory($parameterBag->resolveValue($definition->getFactory()));
4142

4243
$calls = array();
4344
foreach ($definition->getMethodCalls() as $name => $arguments) {
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?php
2+
3+
/*
4+
* This file is part of the Symfony package.
5+
*
6+
* (c) Fabien Potencier <fabien@symfony.com>
7+
*
8+
* For the full copyright and license information, please view the LICENSE
9+
* file that was distributed with this source code.
10+
*/
11+
12+
namespace Symfony\Component\DependencyInjection\Tests\Compiler;
13+
14+
use Symfony\Component\DependencyInjection\Compiler\ResolveParameterPlaceHoldersPass;
15+
use Symfony\Component\DependencyInjection\ContainerBuilder;
16+
17+
/**
18+
* @group legacy
19+
*/
20+
class LegacyResolveParameterPlaceHoldersPassTest extends \PHPUnit_Framework_TestCase
21+
{
22+
private $compilerPass;
23+
private $container;
24+
private $fooDefinition;
25+
26+
protected function setUp()
27+
{
28+
$this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
29+
$this->compilerPass = new ResolveParameterPlaceHoldersPass();
30+
$this->container = $this->createContainerBuilder();
31+
$this->compilerPass->process($this->container);
32+
$this->fooDefinition = $this->container->getDefinition('foo');
33+
}
34+
35+
private function createContainerBuilder()
36+
{
37+
$containerBuilder = new ContainerBuilder();
38+
$containerBuilder->setParameter('foo.class', 'Foo');
39+
$containerBuilder->setParameter('foo.factory.class', 'FooFactory');
40+
$fooDefinition = $containerBuilder->register('foo', '%foo.class%');
41+
$fooDefinition->setFactoryClass('%foo.factory.class%');
42+
43+
return $containerBuilder;
44+
}
45+
46+
public function testFactoryClassParametersShouldBeResolved()
47+
{
48+
$this->assertSame('FooFactory', $this->fooDefinition->getFactoryClass());
49+
}
50+
}

src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveParameterPlaceHoldersPassTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@ public function testClassParametersShouldBeResolved()
3333
$this->assertSame('Foo', $this->fooDefinition->getClass());
3434
}
3535

36-
public function testFactoryClassParametersShouldBeResolved()
36+
public function testFactoryParametersShouldBeResolved()
3737
{
38-
$this->assertSame('FooFactory', $this->fooDefinition->getFactoryClass());
38+
$this->assertSame(array('FooFactory', 'bar'), $this->fooDefinition->getFactory());
3939
}
4040

4141
public function testArgumentParametersShouldBeResolved()
@@ -78,7 +78,7 @@ private function createContainerBuilder()
7878
$containerBuilder->setParameter('alias.id', 'bar');
7979

8080
$fooDefinition = $containerBuilder->register('foo', '%foo.class%');
81-
$fooDefinition->setFactoryClass('%foo.factory.class%');
81+
$fooDefinition->setFactory(array('%foo.factory.class%', 'bar'));
8282
$fooDefinition->setArguments(array('%foo.arg1%', '%foo.arg2%'));
8383
$fooDefinition->addMethodCall('%foo.method%', array('%foo.arg1%', '%foo.arg2%'));
8484
$fooDefinition->setProperty('%foo.property.name%', '%foo.property.value%');

0 commit comments

Comments
 (0)
0