<?php
namespace Symfony\Tests\Component\DependencyInjection\Compiler;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\DependencyInjection\ContainerBuilder;
class CheckExceptionOnInvalidReferenceBehaviorPassTest extends \PHPUnit_Framework_TestCase
{
public function testProcess()
$container = new ContainerBuilder();
$container
->register('a', '\stdClass')
->addArgument(new Reference('b'))
;
$container->register('b', '\stdClass');
}
/**
* @expectedException Symfony\Component\DependencyInjection\Exception\NonExistentServiceException
*/
public function testProcessThrowsExceptionOnInvalidReference()
$this->process($container);
public function testProcessThrowsExceptionOnInvalidReferenceFromInlinedDefinition()
$def = new Definition();
$def->addArgument(new Reference('b'));
->addArgument($def)
private function process(ContainerBuilder $container)
$pass = new CheckExceptionOnInvalidReferenceBehaviorPass();
$pass->process($container);