public function testRenderResponseWithTemplatingEngine()
 {
     $engine = $this->getEngineMock('template.php', true);
     $container = $this->getContainerMock(array('engine' => $engine));
     $delegatingEngine = new DelegatingEngine($container, array('engine'));
     $this->assertInstanceOf('Symfony\\Component\\HttpFoundation\\Response', $delegatingEngine->renderResponse('template.php', array('foo' => 'bar')));
 }
 /**
  * @param \FSi\Bundle\AdminBundle\Admin\Context\ContextManager $manager
  * @param \FSi\Bundle\AdminBundle\Admin\Display\Element $element
  * @param \FSi\Bundle\AdminBundle\Admin\Display\Context\DisplayContext $context
  * @param \Symfony\Component\HttpFoundation\Request $request
  * @param \Symfony\Bundle\FrameworkBundle\Templating\DelegatingEngine $templating
  * @param \Symfony\Component\HttpFoundation\Response $response
  */
 function it_render_template_from_element_in_display_action($manager, $element, $context, $request, $templating, $response)
 {
     $manager->createContext('fsi_admin_display', $element)->willReturn($context);
     $context->handleRequest($request)->willReturn(null);
     $context->hasTemplateName()->willReturn(true);
     $context->getTemplateName()->willReturn('custom_template');
     $context->getData()->willReturn(array());
     $templating->renderResponse('custom_template', array(), null)->willReturn($response);
     $this->displayAction($element, $request)->shouldReturn($response);
 }
示例#3
0
 /**
  * Use a template as the body
  *
  * @param string $template
  * @param array  $vars
  * @param bool   $returnContent
  * @param null   $charset
  *
  * @return void
  */
 public function setTemplate($template, $vars = array(), $returnContent = false, $charset = null)
 {
     if ($this->templating == null) {
         $this->templating = $this->factory->getTemplating();
     }
     $content = $this->templating->renderResponse($template, $vars)->getContent();
     unset($vars);
     if ($returnContent) {
         return $content;
     }
     $this->setBody($content, 'text/html', $charset);
     unset($content);
 }
 /**
  * @param string $view
  * @param array $parameters
  * @param Response $response
  * @return Response|void
  */
 public function renderResponse($view, array $parameters = array(), Response $response = null)
 {
     $event = new DelegatingEngineEvent($view, $parameters, $response, $this->getRequest());
     $this->getEventDispatcher()->dispatch(DelegatingEngineEvents::PRE_RENDER, $event);
     return parent::renderResponse($event->getView(), $event->getParameters(), $event->getResponse());
 }