public function LegacyContainerBuilderTest::testCreateServiceFactoryMethod in Service Container 7.2
Same name and namespace in other branches
- 7 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php \Symfony\Component\DependencyInjection\Tests\LegacyContainerBuilderTest::testCreateServiceFactoryMethod()
@covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
File
- modules/
providers/ service_container_symfony/ lib/ Symfony/ Component/ DependencyInjection/ Tests/ LegacyContainerBuilderTest.php, line 30
Class
- LegacyContainerBuilderTest
- @group legacy
Namespace
Symfony\Component\DependencyInjection\TestsCode
public function testCreateServiceFactoryMethod() {
$builder = new ContainerBuilder();
$builder
->register('bar', 'stdClass');
$builder
->register('foo1', 'Bar\\FooClass')
->setFactoryClass('Bar\\FooClass')
->setFactoryMethod('getInstance')
->addArgument(array(
'foo' => '%value%',
'%value%' => 'foo',
new Reference('bar'),
));
$builder
->setParameter('value', 'bar');
$this
->assertTrue($builder
->get('foo1')->called, '->createService() calls the factory method to create the service instance');
$this
->assertEquals(array(
'foo' => 'bar',
'bar' => 'foo',
$builder
->get('bar'),
), $builder
->get('foo1')->arguments, '->createService() passes the arguments to the factory method');
}