Beispiel #1
0
 public function setUp()
 {
     $this->backup_mail_template = ConfigQuery::read('active-mail-template', 'default');
     ConfigQuery::write('active-mail-template', 'test');
     $this->templateHelper = new TheliaTemplateHelper();
     @mkdir($this->templateHelper->getActiveMailTemplate()->getAbsolutePath(), 0777, true);
     $container = new ContainerBuilder();
     $session = new Session(new MockArraySessionStorage());
     $request = new Request();
     $requestStack = new RequestStack();
     $requestStack->push($request);
     $dispatcher = $this->getMock("Symfony\\Component\\EventDispatcher\\EventDispatcherInterface");
     $request->setSession($session);
     $parserContext = new ParserContext($requestStack, new TheliaFormFactory($requestStack, $container, []), new TheliaFormValidator(new Translator($container), 'dev'));
     $container->set("event_dispatcher", $dispatcher);
     $container->set('request', $request);
     $this->parser = new SmartyParser($requestStack, $dispatcher, $parserContext, $this->templateHelper, 'dev', true);
     $this->parser->setTemplateDefinition($this->templateHelper->getActiveMailTemplate());
     $container->set('thelia.parser', $this->parser);
     $this->container = $container;
 }
Beispiel #2
0
 /**
  * Check that views for the front routes exists.
  */
 public function testTargetFrontViewsExists()
 {
     /** @var Request $request */
     $request = $this->getContainer()->get('request');
     /** @var EventDispatcherInterface $eventDispatcher */
     $eventDispatcher = $this->getContainer()->get('event_dispatcher');
     // we are not going to do any actual rendering, so a mock ParserContext should be enough
     /** @var ParserContext $parserContext */
     $parserContext = $this->getMockBuilder('Thelia\\Core\\Template\\ParserContext')->disableOriginalConstructor()->getMock();
     $templateHelper = new TheliaTemplateHelper();
     $parser = new SmartyParser($request, $eventDispatcher, $parserContext, $templateHelper);
     $parser->setTemplateDefinition($templateHelper->getActiveFrontTemplate());
     $frontRouterFileLoader = $this->routerFileLoaders[static::$routingFilesPathFront];
     foreach (static::$routingFiles[static::$routingFilesPathFront] as $fileName) {
         $router = new Router($frontRouterFileLoader, $fileName);
         /** @var Route $route */
         foreach ($router->getRouteCollection() as $route) {
             if (null === ($view = $route->getDefault('_view'))) {
                 continue;
             }
             $this->assertTrue($parser->templateExists($view . '.html'), "Front view '{$view}' does not exist.");
         }
     }
 }