[TwigBundle] fixed Twig options (removed the parameter as it cannot contain service references)

This commit is contained in:
Fabien Potencier 2015-01-21 05:17:19 +01:00
parent 7eb599e5a0
commit 69748a1595
3 changed files with 9 additions and 9 deletions

View File

@ -110,7 +110,7 @@ class TwigExtension extends Extension
} }
unset($config['autoescape_service'], $config['autoescape_service_method']); unset($config['autoescape_service'], $config['autoescape_service_method']);
$container->setParameter('twig.options', $config); $container->getDefinition('twig')->replaceArgument(1, $config);
$this->addClassesToCompile(array( $this->addClassesToCompile(array(
'Twig_Environment', 'Twig_Environment',

View File

@ -31,7 +31,7 @@
<services> <services>
<service id="twig" class="%twig.class%"> <service id="twig" class="%twig.class%">
<argument type="service" id="twig.loader" /> <argument type="service" id="twig.loader" />
<argument>%twig.options%</argument> <argument /> <!-- Twig options -->
<call method="addGlobal"> <call method="addGlobal">
<argument>app</argument> <argument>app</argument>
<argument type="service" id="twig.app_variable" /> <argument type="service" id="twig.app_variable" />

View File

@ -73,10 +73,10 @@ class TwigExtensionTest extends TestCase
$this->assertContains('form_div_layout.html.twig', $container->getParameter('twig.form.resources'), '->load() includes default template for form resources'); $this->assertContains('form_div_layout.html.twig', $container->getParameter('twig.form.resources'), '->load() includes default template for form resources');
// Twig options // Twig options
$options = $container->getParameter('twig.options'); $options = $container->getDefinition('twig')->getArgument(1);
$this->assertEquals(__DIR__.'/twig', $options['cache'], '->load() sets default value for cache option'); $this->assertEquals('%kernel.cache_dir%/twig', $options['cache'], '->load() sets default value for cache option');
$this->assertEquals('UTF-8', $options['charset'], '->load() sets default value for charset option'); $this->assertEquals('%kernel.charset%', $options['charset'], '->load() sets default value for charset option');
$this->assertFalse($options['debug'], '->load() sets default value for debug option'); $this->assertEquals('%kernel.debug%', $options['debug'], '->load() sets default value for debug option');
} }
/** /**
@ -114,7 +114,7 @@ class TwigExtensionTest extends TestCase
} }
// Twig options // Twig options
$options = $container->getParameter('twig.options'); $options = $container->getDefinition('twig')->getArgument(1);
$this->assertTrue($options['auto_reload'], '->load() sets the auto_reload option'); $this->assertTrue($options['auto_reload'], '->load() sets the auto_reload option');
$this->assertTrue($options['autoescape'], '->load() sets the autoescape option'); $this->assertTrue($options['autoescape'], '->load() sets the autoescape option');
$this->assertEquals('stdClass', $options['base_template_class'], '->load() sets the base_template_class option'); $this->assertEquals('stdClass', $options['base_template_class'], '->load() sets the base_template_class option');
@ -134,7 +134,7 @@ class TwigExtensionTest extends TestCase
$this->loadFromFile($container, 'customTemplateEscapingGuesser', $format); $this->loadFromFile($container, 'customTemplateEscapingGuesser', $format);
$this->compileContainer($container); $this->compileContainer($container);
$options = $container->getParameter('twig.options'); $options = $container->getDefinition('twig')->getArgument(1);
$this->assertEquals(array(new Reference('my_project.some_bundle.template_escaping_guesser'), 'guess'), $options['autoescape']); $this->assertEquals(array(new Reference('my_project.some_bundle.template_escaping_guesser'), 'guess'), $options['autoescape']);
} }
@ -148,7 +148,7 @@ class TwigExtensionTest extends TestCase
$this->loadFromFile($container, 'empty', $format); $this->loadFromFile($container, 'empty', $format);
$this->compileContainer($container); $this->compileContainer($container);
$options = $container->getParameter('twig.options'); $options = $container->getDefinition('twig')->getArgument(1);
$this->assertEquals('filename', $options['autoescape']); $this->assertEquals('filename', $options['autoescape']);
} }