[TwigBundle] add back exception check

This commit is contained in:
Christian Flothmann 2017-06-24 11:40:57 +02:00
parent 9fc9cc4123
commit 46c38df0fd
2 changed files with 15 additions and 1 deletions

View File

@ -125,7 +125,7 @@ class ExceptionController
// default to a generic HTML exception
$request->setRequestFormat('html');
return new TemplateReference('TwigBundle', 'Exception', $name, 'html', 'twig');
return new TemplateReference('TwigBundle', 'Exception', $showException ? 'exception_full' : $name, 'html', 'twig');
}
// to be removed when the minimum required version of Twig is >= 3.0

View File

@ -48,6 +48,20 @@ class ExceptionControllerTest extends TestCase
$this->assertEquals('html', $request->getRequestFormat());
}
public function testFallbackToHtmlWithFullExceptionIfNoTemplateForRequestedFormatAndExceptionsShouldBeShown()
{
$twig = $this->createTwigEnv(array('TwigBundle:Exception:exception_full.html.twig' => '<html></html>'));
$request = $this->createRequest('txt');
$request->attributes->set('showException', true);
$exception = FlattenException::create(new \Exception());
$controller = new ExceptionController($twig, false);
$controller->showAction($request, $exception);
$this->assertEquals('html', $request->getRequestFormat());
}
public function testResponseHasRequestedMimeType()
{
$twig = $this->createTwigEnv(array('TwigBundle:Exception:error.json.twig' => '{}'));