/**
  * @dataProvider templateOptionsProvider
  */
 public function testGenerateTemplate($options, $expectedResult, $filename, $isPublished)
 {
     $times = 1;
     $theme = $this->getMock("RedKiteLabs\\ThemeEngineBundle\\Core\\Theme\\ThemeInterface");
     if ($options["type"] == "Base") {
         $times = 0;
         $theme->expects($this->once())->method('getThemeName')->will($this->returnValue("BootbusinessThemeBundle"));
     }
     $metatagManager = $this->createMetatagManager($times, $isPublished);
     $assetManager = $this->createAssetManager($times, $isPublished);
     $contentManager = $this->createContentManager($isPublished);
     $root = vfsStream::setup('root');
     $pageTree = $this->createPageTree((bool) (!$times), $isPublished);
     $twigTemplateWrite = new TwigTemplateWriter($metatagManager, $assetManager, $contentManager);
     $twigTemplateWrite->generateTemplate($pageTree, $theme, $options)->writeTemplate(vfsStream::url('root'));
     $this->assertEquals($expectedResult, $twigTemplateWrite->getTwigTemplate());
     $this->assertEquals($expectedResult, file_get_contents(vfsStream::url($filename)));
 }
Пример #2
0
 /**
  * @inheritdoc
  */
 protected function save(PageTree $pageTree, Theme $theme, array $options)
 {
     return $this->twigTemplateWriter->generateTemplate($pageTree, $theme, $options)->writeTemplate($options["deployDir"]);
 }