class MergeExtensionConfigurationPassTest in Service Container 7
Same name and namespace in other branches
- 7.2 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php \Symfony\Component\DependencyInjection\Tests\Compiler\MergeExtensionConfigurationPassTest
Hierarchy
- class \Symfony\Component\DependencyInjection\Tests\Compiler\MergeExtensionConfigurationPassTest extends \Symfony\Component\DependencyInjection\Tests\Compiler\PHPUnit_Framework_TestCase
Expanded class hierarchy of MergeExtensionConfigurationPassTest
File
- modules/
providers/ service_container_symfony/ lib/ Symfony/ Component/ DependencyInjection/ Tests/ Compiler/ MergeExtensionConfigurationPassTest.php, line 9
Namespace
Symfony\Component\DependencyInjection\Tests\CompilerView source
class MergeExtensionConfigurationPassTest extends \PHPUnit_Framework_TestCase {
public function testExpressionLanguageProviderForwarding() {
if (true !== class_exists('Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage')) {
$this
->markTestSkipped('The ExpressionLanguage component isn\'t available!');
}
$tmpProviders = array();
$extension = $this
->getMock('Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface');
$extension
->expects($this
->any())
->method('getXsdValidationBasePath')
->will($this
->returnValue(false));
$extension
->expects($this
->any())
->method('getNamespace')
->will($this
->returnValue('http://example.org/schema/dic/foo'));
$extension
->expects($this
->any())
->method('getAlias')
->will($this
->returnValue('foo'));
$extension
->expects($this
->once())
->method('load')
->will($this
->returnCallback(function (array $config, ContainerBuilder $container) use (&$tmpProviders) {
$tmpProviders = $container
->getExpressionLanguageProviders();
}));
$provider = $this
->getMock('Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface');
$container = new ContainerBuilder(new ParameterBag());
$container
->registerExtension($extension);
$container
->prependExtensionConfig('foo', array(
'bar' => true,
));
$container
->addExpressionLanguageProvider($provider);
$pass = new MergeExtensionConfigurationPass();
$pass
->process($container);
$this
->assertEquals(array(
$provider,
), $tmpProviders);
}
}