Commit 7e554db2 authored by Fabien Potencier's avatar Fabien Potencier

improved the performance of the Twig loader by not registering a chain loader if not needed

parent c421eab3
......@@ -96,8 +96,8 @@ class TwigServiceProvider implements ServiceProviderInterface
$app['twig.loader'] = $app->share(function ($app) {
return new \Twig_Loader_Chain(array(
$app['twig.loader.filesystem'],
$app['twig.loader.array'],
$app['twig.loader.filesystem'],
));
});
}
......
......@@ -63,4 +63,18 @@ class TwigServiceProviderTest extends \PHPUnit_Framework_TestCase
$response = $app->handle($request);
$this->assertEquals('foo', $response->getContent());
}
public function testLoaderPriority()
{
$app = new Application();
$app->register(new TwigServiceProvider(), array(
'twig.templates' => array('foo' => 'foo'),
));
$loader = $this->getMock('\Twig_LoaderInterface');
$loader->expects($this->never())->method('getSource');
$app['twig.loader.filesystem'] = $app->share(function ($app) use ($loader) {
return $loader;
});
$this->assertEquals('foo', $app['twig.loader']->getSource('foo'));
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment